0

我仍在学习正则表达式,并希望有人能告诉我这个正则表达式到底做了什么。谢谢你。

\d{8,9}0101\d{3}
4

6 回答 6

1

我建议从可以找到理论的一些来源开始,然后使用一些工具,您可以在其中交互式检查如何应用这些知识。

http://www.regular-expressions.info/posix.html <- 该站点包含有关正则表达式的 POSIX 标准的信息。

我个人使用 rubular.com 来测试匹配,但它引用了 ruby​​ 的正则表达式实现。因此,它还取决于您使用的正则表达式实现。

在您的情况下,很容易回答,但是不同的正则表达式实现之间应该没有区别。

于 2013-11-06T12:33:51.313 回答
1

拆开它:

\d{8,9}

这意味着八位或九位数字(0-9)。

0101

这意味着文字字符串0101

\d{3}

这意味着精确的三个数字。

于 2013-11-06T12:22:17.127 回答
1

您可以使用Expresso了解更多信息。你的正则表达式意味着

  • 1.任何数字的8或9重复
  • 2 然后 0101
  • 3 然后是精确 3 重复的任何数字
于 2013-11-06T12:24:06.487 回答
1

(A) \d{8,9} - 一个数字 (0, 1, 2, 3, 4, 5, 6, 7, 8, 9) 最少重复 8 到最多 9 次

(B) 0101 - 文字字符串 0101

(C) \d{3} - 3 然后是精确 3 重复的任何数字

正则表达式 = A + B + C

于 2013-11-06T23:01:17.777 回答
0

这会找到 8 位或 9 位数字(数字 0-9),然后0101是恰好三个数字...

(你应该可以通过搜索弄清楚!)

于 2013-11-06T12:21:52.970 回答
0

尸检

  • \d{8,9}-一个数字 (0, 1, 2, 3, 4, 5, 6, 7, 8, 9) 重复 8 到 9 次
  • 0101-字符的文字字符串0101
  • \d{3}-一个数字 (0, 1, 2, 3, 4, 5, 6, 7, 8, 9) 重复 3 次

注意重复并不意味着“相同的字符”,而是匹配中的任何内容。这意味着“精确重复 3 次”\d可能是111,123989

于 2013-11-06T12:22:15.347 回答