用于电话验证的JavaScript正则表达式

JavaScript Regular Expressions for Phone Validation

本文关键字:JavaScript 正则表达式 验证 电话 用于      更新时间:2023-09-26

我需要一行正则表达式的帮助,它可以验证电话号码,如下所示:tel:/^(?:(?:'+?1's*(?:['.'-]'s*)?)?(?:'('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*(?:#|x'.?|ext'.?|extension)'s*('d+))?$/

这些是它验证的格式:

555 5555
1-555-555-5555
1.555.555.5555
15555555555分机555
15555555555分机555
15555555555#555
15555555555 x.555

我想验证以下数字:

+263 772 485 384
773456284
0773456284

主要是国际号码

首先,拆分regex的大块。如果您的语言有verbose选项,您可能需要使用该选项。我为你拆分了大部分:

Telephone Numbers (should be 'orred'):
  '+?'d{3}(?:' 'd{3,4})+
  'd[-.]'d{3}[-.]'d{3}[-.]'d{4}
  'd{9,11}
Extensions (should be 'anded' with the previous regexes)
  (' ext(?:'.|ension)(?:' '#)?' 'd{3,4})?