[\d-.]+
工作,但[\d-.]*
没有。我唯一改变的是最后的+
to *
。
<b>12345</b>
<b>12345-6789</b>
<i>1234.5678</i>
<tag>1234-2342346456</tag>
我在这里测试了http://regexr.com?30ngn
*
表示 0 或更多,而表示+
1 或更多。*
唯一的工作吗.
?
[\d-.]+
工作,但[\d-.]*
没有。我唯一改变的是最后的+
to *
。
<b>12345</b>
<b>12345-6789</b>
<i>1234.5678</i>
<tag>1234-2342346456</tag>
我在这里测试了http://regexr.com?30ngn
*
表示 0 或更多,而表示+
1 或更多。*
唯一的工作吗.
?
操作员工作正常,*
只是正则表达式表现得很有趣,或者是由于您-
在正则表达式字符类中危险地使用了该字符。如果要匹配一个-
字符类中的一个字符,把它放在开头;否则,正则表达式引擎可能会认为您想要匹配一个范围(例如[A-Z]
)。
固定的正则表达式[-\d.]*
在regexpal上工作得很好。