一篇认真的正则入门文章:正则表达式数字和数字范围匹配表达

文章目录

  • 正则表达式中的数字
    • \ d用于单个或多个数字
  • 两位数或三位数匹配
    • 正则表达式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的正则表达式

正则表达式的数字和数字范围表达
在本文中,您将学习如何在正则表达式中匹配数字和数字范围。正则表达式编号范围包括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]

你可能感兴趣的:(Python便签,Linux宝塔,正则表达式,Python,Python正则,通用正则表达式,数字正则表达式)