Javascript正则表达式的有效输入

时间:2017-06-07 07:03:25

标签: javascript

我想要JavaScript正则表达式,它验证下面的数字格式(只有数字和最小长度应该是11和最大16) 例如

12345678901 // valid  
+1234567890 // valid  
+1234567890+ // invalid  
+123456789trtr // invalid  
+trtr // invalid  

3 个答案:

答案 0 :(得分:1)

这假设只允许数字,并且在字符串的开头允许+。

/^(?:\+\d{10,15}|\d{11,16})$/

答案 1 :(得分:0)

试试这个正则表达式:

/([+]?[0-9]{1,10})\w+/g

答案 2 :(得分:0)

您希望获得的RegExp非常简单:

/^\+?\d{11,16}$/

它会返回一个字符串,其开头可能有+个符号,后跟11 - 16位数字。

正如用户Jins Peter建议的那样,您可能需要一个验证电话号码的RegExp。

如果它确实是一个电话号码,那么通常会有空格。区号也是可选的。所以最后我建议使用:

/^(\+?\d{2})? ?\d{3} ?\d{3} ?\d{3}$/

它使下面的例子通过了RegExp:

+48 666 555 444 //valid
48 666 555 444 //valid
+48666555444 //valid
48666555444 //valid
666555444 //valid
666 555 444 //valid

请记住,一些奇怪的电话号码也会通过验证。例如:

48 666 555444 //valid
+48666555 444 //valid