2
我有我的正则表达式,它正确匹配电话号码。JavaScript匹配括号在正则表达式中存在左括号或右括号
var reg2= /^(\d?)[-. ]?[(]?(\d{3})[)]?[- ]?(\d{3})[- ]?(\d{4})$/g;
我遇到的问题是我REG2返回有效期为below.How做我创建一个普通的快递,如果它检测到圆括号,它需要另一圆括号是有效的投入,否则返回无效。
"555)-555-5555"
"(555-555-5555"
"1 555)555-5555"
编辑
同时它应该与工作定期
15556667777
1-555-666-7777
1 555 666 7777
我可以问你是什么$之间的区别'(?:\(\ d {3} \)| \ d {3})'和'(\(\ d {3} \ )| \ d {3})'。明显的区别是$'?:'。如果没有区别,那么专门用于$'?:'的是什么? –
'(?:...)'是一个非捕获组,'(...)'是一个捕获组。使用非捕获组被认为对整体效率更好。 – anubhava
啊,你的权利。那很完美。谢谢。 –