RegEx电话号码验证
答
一个“+”和12个数字。提示:逃避“+”。
^\+(90)\([2-5]{1}\)[0-9]{9}
或不开始与+;
\+(90)\([2-5]{1}\)[0-9]{9}
答
如果它正是格式,那么你可以使用类似:/^\+\d{12}\z/
如果你想允许它的一些空间/破折号/期,但仍保持在12号: /^\+(?:\d[ .-]?){12}\z/
然后,你可以删除那些其他字符有: s/[ .-]+//g
(的Perl /等符号)
答
,如果你需要它来启动一个“+”和“9”和11位:
^[+]9\d{11}$
我建议你了解正则表达式的工作,看看这个有用的测试仪: http://www.sweeting.org/mark/html/revalid.php
在底部,他们解释什么是每个运营商表示。
在互联网上也有各种各样的例子。
编辑:阅读OP的意见,为了使号码,开始与“+90”,然后有10位数字后,您可以使用下面的表达式:
^[+]90\d{10}$
答
<script type="text/javascript">
var test = "+905555555555";
var re = new RegExp(/^\+[0-9]{12}$/gi);
if(re.test(test))
{
alert("Number is valid");
} else {
alert("Number is not valid");
}
</script>
看看这个现场测试出你的正则表达式:http://www.regextester.com/index2.html
而一个好的起点,学习是在这里:
答
为了弥补您的附加规范使用:
^\+90\([2-5]\)\d{9}$
你一定要锚^
和$
,以确保前面有什么或你的字符串之后。例如如果您不使用$
,该数字可能会更长,如您指定的12个数字。
你可以看到它online here on Regexr
也许不适合你困难的,但如果它不是为OP他/她不会张贴了这个问题。 – jackJoe 2011-05-13 08:13:38
一个“+”和12个数字。提示:逃避“+”。 – DanielB 2011-05-13 08:14:00
@jackJoe,但要学习他应该尝试的东西。也许他可以张贴他之前尝试过的一些例子。 – DanielB 2011-05-13 08:15:14