2

電話番号を検証する正規表現の行について助けが必要で、次のようになります。 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 ×。555

次のような数値を検証したい:

+263 772 485 384
773456284
0773456284

主に国際番号

4

1 に答える 1

1

まず、正規表現の大きなチャンクを分割します。言語の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})?
于 2012-08-19T16:04:59.857 に答える