Javascript Regex验证所有电话号码
我需要构建一个正则表达式来验证Javascript Regex验证所有电话号码,javascript,Javascript,我需要构建一个正则表达式来验证包含+()的所有类型的电话号码- 多亏了谷歌和堆栈溢出,我得到了一个正则表达式 /^[+]*[(]{0,1}[0-9]{1,3}[)]{0,1}[-\s\./0-9]*$/g 验证所有电话号码 但是,在验证+(123 456-7890时,上述正则表达式不能按预期工作。 所以我将上面的正则表达式修改为 /^\+?([(]{1}[0-9]{1,3}[)]{1}|[0-9]{1,3})([-\s0-9]*|[.\s0-9]*)\d+$/ 而且效果很好 现在我需要限制用
包含+()的所有类型的电话号码-代码>
多亏了谷歌和堆栈溢出,我得到了一个正则表达式
/^[+]*[(]{0,1}[0-9]{1,3}[)]{0,1}[-\s\./0-9]*$/g
验证所有电话号码
但是,在验证+(123 456-7890
时,上述正则表达式不能按预期工作。
所以我将上面的正则表达式修改为
/^\+?([(]{1}[0-9]{1,3}[)]{1}|[0-9]{1,3})([-\s0-9]*|[.\s0-9]*)\d+$/
而且效果很好
现在我需要限制用户输入连续的-
和点(.)
所以我手动验证了这一点
if(HomePhone.indexOf("..") > -1 && HomePhone.indexOf("--") > -1)
return false;
有谁能帮助我通过改进单个正则表达式来解决上述问题吗
提前感谢用于匹配。
和--
使用正则表达式/(\.\.+\124;\-->)/g
我相信下面的正则表达式将满足您的所有要求
正则表达式:^\+?(\([0-9]{3}\)|[0-9]{3})()?[0-9]{3}(-)?[0-9]{4}$
此正则表达式应接受以下内容:
(123) 456-7890
+(123) 456-7890
+(123)-456-7890
123-456-7890
123.456.7890
1234567890
+3163636363
075-6354672
如果需要,您可以修改此表达式以适应您的要求。您限制用户不能给出超过3个连续数字的方式,您可以对连字符和圆点这样做,对吗?想想看。我没有给您否决票。请尝试此链接@WasiAhmad。用户可以有空格、句点和连字符,但不能连续。他连续进站numbers@NitinKumar谢谢你的链接。让我看看并试试out@ManikandanSekar我可以理解,空格、句点和连字符的位置也是固定的。您只需确保用户被限制连续放置多个连字符或点,这与您对数字所做的相同。感谢您的快速操作回复。正如我在帖子中提到的,我需要使用同一个正则表达式验证多个字段,所以我删除了g标志。我会试试这个