我在 Javascript 中使用正则表达式来验证手机号码。
我的条件是:
- 手机号码可以+60或+63或+62或+66或0开头
- 手机号码长度在9到13之间
我试过代码:
^(?:\+60|+63|+62|+66|0)[. ()-]*(?:\d[. ()-]*){10,11,12,13}$/;
但是我没有得到它。
示例手机号码是
+601126314441
01126342542
+631124445675
+661124445675
+621124445675
+60111243236
+62105273214
0105273214
最佳答案
像这样更新你的正则表达式:
/^(\+60|\+63|\+62|\+66|0)\d{9,13}$/gm
在 www.jsregex.com 上验证(不要忘记检查全局和多行选项)
Fiddle Example :)
Javascript:
var reg = /(\+60|\+63|\+62|\+66|0)\d{9,13}/m;
var numbers = ['+601126314441', '01126342542', '+631124445675', '+661124445675', '+621124445675', '+60111243236', '+62105273214', '0105273214'];
var matched = [];
for (var i = 0; i < numbers.length; i++) {
if (reg.test(numbers[i])) matched.push(numbers[i]);
}
console.log(matched.toString());
关于javascript - 用于验证手机号码的正则表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20836262/