为什么我的正则表达式不匹配数字块?

时间:2013-09-05 00:57:43

标签: regex

非常基本的问题,所以我会保持简短和甜蜜。

我当前的正则表达式是\d*(\d){1,6}有效,但很麻烦) - 我想抓住所有数字组,即12345857

我该怎么做?

2 个答案:

答案 0 :(得分:5)

\d*匹配任意数量的数字,包括0.您的字符串以0位开头。嘿,一场比赛!

使用\d+

答案 1 :(得分:2)

您希望\d+\d{1,}匹配/捕获您的数字组。

正则表达式量词如下:

*      Match 0 or more times
+      Match 1 or more times
?      Match 1 or 0 times
{n}    Match exactly n times
{n,}   Match at least n times
{n,m}  Match at least n but not more than m times

按照说明,抓住以下字符串中的最后一组数字:

google.com/185/586 
google.com/389/754

使用前瞻断言:(?<=\d\/)(\d+),这将捕获(586)和(754