相关文章推荐
叛逆的花生  ·  1-dimensional array ...·  4 月前    · 
礼貌的萝卜  ·  where is language of ...·  1 年前    · 

正则表达式的数字和数字范围表达
在本文中,您将学习如何在正则表达式中匹配数字和数字范围。正则表达式编号范围包括0到9、1到9、0到10、1到10、1到12、1到16和1-31、1-32、0-99、0-100、1-100, 1-127、0-255、0-999、1-999、1-1000和1-9999。

关于正则表达式要记住的第一件事是正则表达式不知道数字,不知道计数并且不能理解1-100表示​​1到100之间的任何数字。原因是 正则表达式只处理文本而不是数字 ,因此在处理正则表达式匹配、搜索、验证或替换操作中的数字和数字范围或数字范围时,您必须格外小心。

仅举一个例子,假设您要匹配1到100之间的任何数字,并(想当然的)为其编写正则表达式为

/ [1-100] /

并希望它将匹配从1到100的所有数字,那么您的正则表达式将起作用,但会产生意外的结果。这个正则表达式将只匹配两个数字,是的,只有两个数字,对此毫无疑问。你能找出哪两个数字吗?
如果你以为是匹配到1和100两个数字那可就大错特错了。如果您细看一下它,就会知道它只会匹配0和1,而不会匹配其他任何东西。
类似的,范围[0-255]将匹配0、1、2、5。首先是字符类中的范围0-2,它将匹配两次写入的0,1,2和5,将匹配5。现在开始在正则表达式中匹配数字和数字范围的逻辑和原理。

正则表达式中的数字

数字最简单的匹配是文字匹配。如果您想匹配3个,只需写/ 3 /,或者如果您要匹配99就写作/ 99 /,这将是一个成功的匹配。类似地,匹配2019 写 / 2019 /,这都是数字文字匹配。
但是您会看到它不灵活,因为很难知道文本中的特定数字,而有时候该数字可能会意外出现在范围内。

\ d用于单个或多个数字

**为了匹配0到9之间的任何数字,我们在正则表达式中使用\ d。**它将匹配从0到9的任何一位数字。

\ d表示[0-9]或匹配0到9之间的任何数字。它用简写是[0-9]代替写0123456789,其中[]用于字符范围。
例如

[1-9] [0-9]将匹配从10到99的两位数字。

但是,如果您要匹配任意数量的数字(例如2,55,235、9875),则需要在末尾添加一个量词

/ \ d + / /,其中+是一个量词,可匹配一次至尽可能多的次数。

两位数或三位数匹配

要匹配两位数字/ \ d {2} /,其中{}是一个量词,而2则表示匹配两次或仅匹配两位数字。同样,/ \ d {3} /用于匹配三位数,依此类推。

正则表达式匹配数字范围
现在,有关数字范围及其正则表达式的含义。通常在数字\ b或^ $字符用于字符串的开头或结尾之前和之后都使用单词边界。

正则表达式0-9

要匹配0-9的数字范围,即0到9之间的任何数字,正则表达式很简单

/ [0-9] /

正则表达式1到9

要匹配1到9之间的任何数字,正则表达式很简单

/ [1-9] /

同样,您可以使用/ [3-7] /匹配3到7之间的任何数字,或/ [2-5] /匹配2,3,4,5

正则表达式0到10

匹配从0到10的数字只是一个有点复杂的开始,不是那么复杂,但是使用了一种不同的方法。该系列分为两个部分。

  1. 从0到9

  2. 10

并将为组件编写正则表达式

/ \ b([0-9] | 10)\ b /

对于这两个组件,我们正在编写两段

  1. 从0到9 [0-9]&

  2. 10 10,我们正在使用组并使用|运算符,称为“或”运算符,此处表示0-9或10。

正则表达式1到10

同样,对于1到10,正则表达式将为

\ b([1-9] | 10)\ b

正则表达式1到12

\ b([1-9] | 1 [0-2])\ b

从1到12的范围分为两个范围

  1. 1至9-> [1-9]

  2. 10到12-> 1 [0-2]

正则表达式1到16

\ b([1-9] | 1 [0-6])\ b

在这种情况下,范围分为

  1. 1至9

  2. 10至16

正则表达式编号范围1-31

\ b([1-9] | [12] [0-9] | 3 [01])\ b

在这里,从1-31的范围按要求分为三部分

  1. 1至9-> [0-9]

  2. 10到29-> [12] [0-9]

  3. 30至31-> 3 [01]

正则表达式为1-32

1到32的正则表达式是

\ b([1-9] | [12] [0-9] | 3 [0-2])\ b
  1. 1至9-> [0-9]

  2. 10到29-> [12] [0-9]

  3. 30至32-> 3 [02]

0-99的正则表达式

0到99范围的正则表达式为

\ b([0-9] | [1-9] [0-9])\ b

此范围分为两个范围

  1. 0到9-> [0-9]

  2. 10到99-> [1-9] [0-9]

正则表达式为0-100

0到100范围的正则表达式是

\ b([0-9] | [1-9] [0-9] | 100)\ b

在这里,范围分为三部分,然后前面的范围是数字100。

正则表达式为1-100

此范围的正则表达式为

\ b([1-9] | [1-9] [0-9] | 100)\ b

1.第一部分为1到9

2.第二部分是10到99

3.第三部分是100

正则表达式为1-127

正则表达式范围1到127是

\ b([1-9] | [1-9] [0-9] | 1 [01] [0-9] | 12 [0-7])\ b

数值范围1至127分为

  1. 1至9

  2. 10至99

  3. 100至119

  4. 120至127

0-255的正则表达式

此范围也分为三个部分。

  1. 0-199

此组件的正则表达式为

[01]?[0-9] [0-9]?

  1. 第二部分是200-249,此部分的正则表达式是

2 [0-4] [0-9]

  1. 最后最后一部分是250-255

25 [0-5]

完整的正则表达式是

/ \ b([01][0-9] [0-9]| 2 [0-4] [0-9] | 25 [0-5]

有关更多详细信息,请参见正则表达式获取IP地址的博客文章

0-999的正则表达式

[0-9] | [1-9] [0-9] | [1-9] [0-9] [0-9]

0到999范围的正则表达式分为三部分,

  1. 0至9

  2. 10至99

  3. 100至999

1-999的正则表达式

1-999的正则表达式为

[1-9] | [1-9] [0-9] | [1-9] [0-9] [0-9]

正则表达式编号范围1-1000

正则表达式代码匹配范围从1到1000是

[1-9] | [1-9] [0-9] | [1-9] [0-9] [0-9] | 1000)

1-9999的正则表达式

正则表达式范围1到9999是

[1-9] | [1-9] [0-9] | [1-9] [0-9] [0-9] | [1-9] [0-9] [0-9] [ 0-9])
                    文章目录https://www.regextutorial.org/regex-for-ip-address-match.php正则表达式的数字和数字范围表达在本文中,您将学习如何在正则表达式中匹配数字和数字范围。正则表达式编号范围包括0到9、1到9、0到10、1到10、1到12、1到16和1-31、1-32、0-99、0-100、1-100, 1-127、0-255、0-999、1-999、1-1000和1-9999。关于正则表达式要记住的第一件事是正则表达式不知道数字,不知道计数并且不能理解1-
str = img1.jpg,img2.jpg,img3.bmp;
reg = /(?:\w*)(?=\.gif)/;
arr_m = str.match(reg);//arr_m = [img1,img2]
你在期待什么还是在等待什么?你选择了什么还是只想浮徒一生?茫茫人海,真的需要那么回眸一笑。
以上这篇浅谈JavaScript正则表达式-非捕获性分组就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持软件开发网。
				
1. 正则匹配数字范围 正则表达式是为了匹配字符而设计的,而并不是为了匹配数字,所以当你使用正则匹配指定范围内的数字的时候你需要额外小心。表达式[0-255]并不能匹配0至255之间的数字表达式[0-255]是一个字符集,它的含义是匹配 0,1,2,5中任意一个字符,这个表达式等同于[0125]。 正则引擎真正处理的是字符,所以数字0对于引擎来说是一个字符,而255对于引擎来说是长度为3的字符。...
电子邮件:/\w+([-+.']\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*/ 变量:/[a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*/ 基于php常用正则表达式的整理汇总 1        /\w+([-+.']\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*/  电子邮件 2        "^\d+
软件开发中,需要限制编辑框的数字范围,网上搜了一些,要么漏洞很多,要么不完善,于是博主重新学了一些正则表达式的语法。不多废话,请看正题: 1、[0,255]范围内的正则表达式: ^[0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|(25[0-5])$ 解析:这个范围IP地址中会用到,如果写成^[0-2][0-5]{2}$那就大错特错了,不仅会取000这样无意义的数值,还不能输入39、166等数字。 上述表达式虽长,但是分段看就很简单,将其分成5个区间: 取值范围
正则表达式基础知识 正则表达式,又称规则表达式,英文名为Regular Expression,在代码中常简写为regex、regexp或RE,是计算机科学的一个概念。正则表通常被用来检索、替换那些符合某个模式(规则)的文本。 正则表达式由一些普通字符和一些元字符(metacharacters)组成。普通字符包括大小写的字母和数字,而元字符则具有特殊的含义,我们下面会给予解释。 在最简单的
4 m-n位的数字:^\d{m,n}$ 5 零和非零开头的数字:^(0|[1-9][0-9]*)$ 6 非零开头的最多带两位小数的数字:^([1-9][0-9]*)+(.[0-9]{1,2})?$ 7 带1-2位小数的正数或负数:^(\-)?\d+(\.\d{1,2})?$ 8 正数、负数、和小数:^(\-|\+)?\d+(\.\d+)?$ 9 有两位小数的正实数:^[0-9]+(.[0
初级篇链接://www.jb51.net/article/99372.htm 上一篇我们说在这一篇里,我们会介绍子表达式,向前向后查找,回溯引用。到这一篇开始前除了回溯引用在一些场合不可替代以外,大部分情况下的正则表达式你应该都会写了。 1.子表达式 子表达式的概念特别好理解。其实它就是将几个字符的组合形式看做一个大的“字符”。不好理解?举个栗子:我们要匹配类似IP地址这种形式的字符(暂且不考虑数值范围的合理性,这个留作学完之后的思考题吧)。形如192.168.1.1这样的地址我们怎么写表达式呢? 答案一 \d+.?\d+.?\d+.?\d+ 不好,一个是太繁琐,另一个是连位数都控制不了
正则表达式快速入门(二) 【导读】在本文里,我们主要介绍子模式(subpatterns),逆向引用(Back references)和量词(quantifiers) 在上篇文章里,我们介绍了正则表达式的模式修正符与元字符,细心的读者也许会发现,这部分介绍的非常简略,而且很少有实际的例子的讲解。这主要是因为网上现有的正则表达式资料都对这部分都有详细的介绍和众多的例子,如果觉得对前一部分缺乏了解可以参看这些资料。本文希望可以尽可能多涉及一些较高级的正则表达式特性。   在本文里,我们主要介绍子模式(subpatterns),逆向引用(Back references)和量词(quantifiers)
默认情况下pyinstaller用Mac生成的文件只是Mac的执行文件;用window生成的才是exe执行文件。一开始用mac生成了执行文件,但执行文件不是exe的,让我晕菜了。 Windows上pyinstaller的安装和使用步骤: 安装Anaconda window版本:注意安装时选择“配置环境变量”。如果没有配置环境变量,果断卸载重装。 安装pyinstaller:因为环境变量已经配...
随着自动驾驶技术的不断发展,多模态感知成为了实现自动驾驶的关键技术之一。激光雷达和相机是自动驾驶中最常用的两种传感器,它们分别具有高精度测距和高分辨率成像的特点。如何将激光雷达和相机的信息融合起来,实现更加全面、准确的环境感知,成为了研究的热点。 面向自动驾驶多模态感知的激光雷达-相机融合框架主要包括以下几个步骤: 1. 数据预处理:对激光雷达和相机采集到的数据进行预处理,包括去噪、校准、配准等操作,以确保数据的准确性和一致性。 2. 特征提取:对激光雷达和相机数据进行特征提取,提取出各自的特征信息。激光雷达可以提取出点云数据,相机可以提取出图像特征点、颜色等信息。 3. 特征融合:将激光雷达和相机提取出的特征融合起来,形成一个多模态感知的环境模型。常用的融合方法包括点云-图像投影融合、特征点匹配融合等。 4. 目标检测与跟踪:利用融合后的环境模型,进行目标检测与跟踪。可以利用深度学习等方法进行目标检测,利用卡尔曼滤波等方法进行目标跟踪。 5. 场景分割与建图:根据融合后的环境模型,对环境进行场景分割,将场景分成不同的区域,同时进行三维建图,建立起环境模型。 6. 路径规划与控制:基于环境模型和目标检测结果,进行路径规划与控制,实现自动驾驶。 总之,面向自动驾驶多模态感知的激光雷达-相机融合框架可以有效提高自动驾驶系统的环境感知能力,为实现自动驾驶提供更加可靠、安全的技术支持。