电话号码验证正则表达式包括一个开头和前一个数字的加号

Sam*_*ami 6 javascript java regex asp.net-mvc-4 knockout.js

我正在尝试验证电话号码,但不能.

我的要求是电话号码只包含数字和+(加号).+只能是第一个字符.

例如:+123456489

我正在使用这个正则表达式,但它不起作用:

/^\+(?:[0-9]??)$/
Run Code Online (Sandbox Code Playgroud)

提前致谢.

Rah*_*pta 8

如果您只想允许+符号并且仅在数字的开头,并且不想允许除数字之外的任何其他字符或符号,请尝试以下正则表达式:

var regEx = /^[+]?\d+$/;
regEx.test("+123345"); // this will be true
regEx.test("++123345"); // this will be false
regEx.test("1+23345"); // this will be false
regEx.test("111222"); // this will be true
Run Code Online (Sandbox Code Playgroud)


tk_*_*tk_ 7

这个怎么样?

^[\+\d]?(?:[\d-.\s()]*)$
Run Code Online (Sandbox Code Playgroud)

适用于以下测试用例:

测试字符串

你可以在这里测试:https : //regex101.com/r/mS9gD7/39


bra*_*ipt 5

我会改用它:

^\+?\d*$
Run Code Online (Sandbox Code Playgroud)

在开头匹配您的+,然后匹配任何数字,短划线,空格,圆点或括号.

请参阅以下内容:http://regex101.com/r/mS9gD7

  • @Sami 在那种情况下,甚至更简单:`^\+?\d*$` (3认同)
  • 只允许使用数字和加号。 (2认同)