我是正则表达式的初学者。
我需要一个满足以下标准的正则表达式。我尝试了很多东西,但无法做到。
-
,(
,)
,空格,/
,\
有人可以帮助我吗?
答案 0 :(得分:0)
这种模式似乎按要求工作^(?=(?:\D*\d){10,12}\D*$)[0-9 \-()\\\/]{1,16}$
Demo
答案 1 :(得分:0)
表达式[ 0-9()\-/\\]{10,16}
满足您的所有要求。
[...]
是一个正面的字符类定义。匹配的字符可以是方括号中的一个字符。
方括号中的第一个字符是空格字符。
0-9
定义所有数字(从字符0到字符9)。 \d
也可以用于任何数字。
(
和)
也是有效字符。
字符-
在方括号中具有特殊含义,如0-9
所示,因此当它应被解释为文字字符时,必须使用反斜杠字符在方括号中转义。
斜线是下一个字符。请注意,在JavaScript RegExp对象中使用此正则表达式时,必须使用反斜杠转义斜杠。
带方括号的最后一个字符是反斜杠字符,必须始终使用一个反斜杠进行转义,因为如果反斜杠应该被解释为文字字符,它就是转义字符。
{10,16}
...表示前面的表达式必须在字符串上正应用至少10个但不超过16个字符。
但你应该真正搜索与WWW中的电话号码匹配的表达,因为这是一个非常需要的表达方式。你不应该分别重新发明轮子表达式。
答案 2 :(得分:0)
我建议您使用http://regexlib.com来满足您的RegEx需求。非常好的网站,有大量的RegEx,你可以浏览。我还建议使用http://regex101.com来测试正则表达式。有一个非常棒的工具可以帮助你构建/修改/测试你的表达。