2013-05-16 81 views
4
[\0-9]{10,15} 

我想匹配的电话号码,并最终编写正则表达式,它也包含+()匹配手机的,但我不明白为什么。正则表达式(perl)中的[ 0-9]是什么意思?

+2

它不应该只是'^ [0-9] {} 10,15 $'?但实际上你正试图解决已经解决了一千次的问题。 ) – raina77ow

+3

较短的方式来写[0-9]在Perl风格正则表达式是 '\ d':'^ \ d {10,15} $' – TML

+2

@TML,实际上,这些都是以Unicode的存在_not_当量(除非你使用5.14中引入的'/ a'修饰符)。 – cjm

回答

20

\0是一个NUL字节,字节0x0。范围表示从0x0到“9”(0x39)的字符范围,该字符恰好包含一串像“+”的字符。实际上,范围跨越ASCII表的前58个字符。见http://www.asciitable.com

因此,“##########”也将匹配您的正则表达式。

相关问题