在IE中工作的美国电话正则表达式



我一直在使用以下正则表达式进行美国电话号码验证,但发现它在IE7中不起作用。 我知道前瞻问题,并且能够通过将长度问题移到开头来修复密码验证,但无法弄清楚如何调整电话号码一:

/^(?:(?:(s*(?([2-9]1[02-9]|[2-9][02-8]1|[2-9][02-8][02-9])s*)|([2-9]1[02-9]|[2-9][02-8]1|[2-9][02-8][02-9])))?s*(?:[.-]s*)?)([2-9]1[02-9]|[2-9][02-9]1|[2-9][02-9]{2})s*(?:[.-]s*)?([0-9]{4})$/
我相信

你正在寻找这个正则表达式:

/^s*([2-9]1[02-9]|[2-9][02-8]1|[2-9][02-8][02-9])s*[.-]?s*([2-9]1[02-9]|[2-9][02-9]1|[2-9][02-9]{2})s*[.-]?s*([0-9]{4})s*$/

最新更新