RegEx完全匹配^abc$dons'不起作用
RegEx exact match ^abc$ doesn't work
我正在尝试在JavaScript中使用正则表达式来测试表单文本输入的值是否为法国手机号码。
法国手机号码以
06
或07
开头,后面跟着8位数字,如0611223344
或0744332211
。这些数字的国际形式以+33
开头,它取代了第一个0
,比如+33611223344
或+33744332211
。
我使用的是RegEx:('+'b33|'b0)[67][0-9]{8}'b
,它测试输入是否以+336/7或06/7开头,后面是8位数字。
我添加了单词边界('b
),所以像06112233440611223344这样的数字(两个串联的正确形式)不匹配。
此RegEx适用于以下情况:
0611223344 // matches
0744332211 // matches
+33611223344 // matches
+33744332211 // matches
06112233440744332211 // doesn't match
但我仍然会遇到这些输入的问题:
+33611223344+33611223344
0611223344 0744332211
0744332211+33611223344
0744332211 +33611223344
他们都匹配。。。
我试图以各种可能的方式将^
和$
添加到我的RegEx中,但每当我添加其中一个符号时,RegEx就不再工作了。
您可以使用下面的正则表达式来匹配所有的法国电话号码,
^(?:(?:0|'+33)(?:6|7))'d{8}$
演示
如果您想匹配此格式的数字06 21 05 65 48
和+33 6 21 05 65 48
,也可以使用下面的正则表达式
^(?:(?:(?:0|'+33)(?:6|7))'d{8}|0[67](?: 'd{2}){4}|'+33 [67](?: 'd{2}){4})$
演示
^('+'b33|'b0)[67][0-9]{8}$
您的正则表达式运行良好。只需添加锚点。
请参阅演示。
http://regex101.com/r/pP3pN1/35
相关文章:
- electronic BrowserWindow的最小高度和宽度在hide()show()方法之后不起作用
- 监视函数从服务返回不起作用,但作用域函数起作用
- 幻灯片滚动javascript不起作用
- AngularJS ng include dons'不起作用
- AngularJS:$on dons'不起作用
- getDocument by id/get input text from button dons'不起作用
- 与ng一起使用localstorage Change dons'不起作用
- 点击按钮dons'它在IE9中不起作用,但没有错误消息(它在chrome中起作用)
- 带有c#dons'不起作用
- Angular JS:input[radio]dons'不起作用
- Php select onchange dons'似乎不起作用
- .src=Array[i]dons'似乎不起作用
- 尝试内联编写javascript函数:dons'不起作用
- Meteor-dons'中的查询子文档;不起作用
- 多个函数的javascript onsubmit事件check dons'不起作用
- jquery设置并删除选中的属性dons'不起作用,javascript起作用
- 联系表单7重定向on_sent_ok dons'不起作用
- RegEx完全匹配^abc$dons'不起作用
- jquery点击输入[type='']dons'不起作用
- gullowinclude with gullow uglify dons'不起作用