首页 > 其他分享 >正则表达式

正则表达式

时间:2024-02-01 19:55:41浏览次数:25  
标签:正则表达式 浮点数 0.75 EXCESS 十进制 小数

1.正则表达式和 EXCESS系统
尾数部分使用正则表达式(按照特定的规则来表示数据的形式),可以将表现形式多种的浮点数统一为一种表现形式。如十进制小数0.75就有多种表现形式。为了方便计算机的处理,需要制定一个统一的规则
将小数点前面的值固定为1的正则表达式处理方法:
指数部分使用EXCESS系统,使用这种方式主要为了表示负数时不使用符号位。EXCESS系统指通过将指数部分表示范围的中间值设为0,使得负数不需要用符号来表示
2.在程序中得到确认
将十进制小数0.75用单精度浮点数分隔表示为
0(符号位)-01111110(指数部分)-10000000000000000000000(尾数部分)
0.75是正数,则符号位为0。指数部分是十进制126,则EXCESS系统表现为-1
根据正则表达式的规定,尾数部分为实际为1.10000000000000000000000这个二进制数。将尾数部分的二进制数转换成十进制数,结果就是1.5(1乘2的0次幂 + 1乘2的-1次幂)
所以结果为1.52^-1,刚好是0.75
3.但对0.1处理时,经过处理后计算
0-01111011-10011001100110011001101的值用十进制表示为1.5
2^-1=0.75这样的结果与0.1相差甚远,这就是计算机处理小数时出现错误的过程
避免计算机计算出错
计算机出错的原因之一是,采用浮点数来处理小数。作为程序的数据类型,不管是使用单精度浮点数还是双精度浮点数,都存在着出错的可能
4.避免出错介绍两种方法:
1,回避策略,即无视这些错误。有时一些细小的偏差不会造成什么问题
2,将小数转换成整数计算

标签:正则表达式,浮点数,0.75,EXCESS,十进制,小数
From: https://www.cnblogs.com/sleeeep/p/18001997

相关文章

  • Python正则表达式之: (?P<name>…)
    importres="2023-12-2314:34:56|liming|20230789"parren="(?P<time>^\d+-\d+-\d+\s\d+:\d+:\d+)\|(?P<name>[\w]+)\|(?P<number>\d+)$"g=re.search(parren,s)>>>g.groupdict(){'time':'2......
  • 正则表达式底层实现
    1、不考虑分组代码示例publicstaticvoidmain(Stringargs[]){Stringcontent="2000年5月,JDK1.3、JDK1.4和J2SE1.3相继发布,几周后其获得了Apple公司MacOSX的工业标准的支持。"+"2001年9月24日,J2EE1.3发布。2002年2月26日,J2SE1.4发布。自此Java的计算能......
  • 为啥一样一样的正则表达式,去提取就提取不出来?
    大家好,我是皮皮。一、前言前几天在Python最强王者交流群【哎呦喂 是豆子~】问了一个Pandas数据提取的问题。问题如下图所示:大佬们  为啥一样一样的正则表达式 for循环就可以出结果用apply(lambdax:re.findall(pattern,x))去提取就提取不出来?图一:图二:二、实现过......
  • # yyds干货盘点 # 为啥一样一样的正则表达式,去提取就提取不出来?
    大家好,我是皮皮。一、前言前几天在Python最强王者交流群【哎呦喂 是豆子~】问了一个Pandas数据提取的问题。问题如下图所示:大佬们  为啥一样一样的正则表达式 for循环就可以出结果用apply(lambdax:re.findall(pattern,x))去提取就提取不出来?图一:图二:二、实现过程这里【隔......
  • 正则表达式基础知识
    一个正则表达式就是由普通字符(例如字符a到z)以及特殊字符(称为元字符)组成的文字模式。该模式描述在查找文字主体时待匹配的一个或多个字符串。正则表达式作为一个模板,将某个字符模式与所搜索的字符串进行匹配。如:JScriptVBScript匹配/^\[\t]*$/"^\[\t]*$"匹配一个空白......
  • 从编码角度看正则表达式的\w\s\b\d具体含义
    从基础的ascii码找出正则表达式元字符的具体意义。1<?php2//从最基础的编码ascii码表的128个字符了解正则\w\s\b\d所对应的所有匹配3$reg_w='/\w/';4$reg_s='/\s/';5$reg_b='/\b/';6$reg_d='/\d/';7$str_w='';$str_s=''......
  • 无涯教程-Scala - 正则表达式
    本章介绍Scala如何通过scala.util.matching包中提供的Regex类支持正则表达式。尝试下面的示例程序,我们将尝试从语句中找出单词Scala。importscala.util.matching.RegexobjectDemo{defmain(args:Array[String]){valpattern="Scala".rvalstr="Sc......
  • javascript replaceall 正则表达式
    varstr="dogdogdog";varstr2=str.replace(/dog/g,"cat");console.log(str2);参考:https://www.jb51.net/article/23762.htm?tdsourcetag=s_pcqq_aiomsgstr="dogdogdog12";str=str.replace(newRegExp("[d]","g......
  • expect、正则表达式、sed、cut
    一、expectexpect是一个用于自动化交互式任务的工具,它的使用通常需要编写expect脚本,并为该脚本传递必要的参数。expect"命令本身通常不需要太多的参数,但脚本需要为特定的交互任务提供所需的参数和命令。以下是一些常见的expect脚本参数:spawn命令:用于启动要自动化的交互......
  • 正则表达式匹配规则
    1.字符表达式描述[abc]字符集。匹配集合中所含的任一字符。[^abc]否定字符集。匹配任何不在集合中的字符。[a-z]字符范围。匹配指定范围内的任意字符。.匹配除换行符以外的任何单个字符。\转义字符。\w匹配任何字母数字,包括下划线(等价于[A-Za-z0-9_]......