0
0

More than 3 years have passed since last update.

正規表現備忘録

Last updated at Posted at 2021-04-05

受け取った値が電話番号の形式かどうかを判定するだけの正規表現

以下の電話番号の形式であれば、trueを返す。
(USの電話番号に倣ったもの。またcountry codeを使う場合、行頭に1を付与する。)

555-555-5555
(555)555-5555
(555) 555-5555
555 555 5555
5555555555
1 555 555 5555

test.js

function telephoneCheck(str) {
  var reg = /^(1\s?)?(\(\d{3}\)|\d{3})[\s\-]?\d{3}[\s\-]?\d{4}$/;
  return reg.test(str);
}

^ ...文字列の始まりを表す。
\s ...空文字を表す。
? ...直前の1文字またはグループは省略可、を表す。
(1\s?)? ..."1 " または "1"が1つ以上あるかどうかの判定

\d ...数字1文字を表す。
{n}... 直前の文字のn回の繰り返し
\ ...つぎに来る文字または記号を正規表現ではなく、単なる文字として扱いたい場合に使う。
| ...orを表す。
((\d{3}\)|\d{3})... (\d{3}) または d{3}を判定。

[ ] ...[ ]の中のどれか1文字を対象にする
[\s\-]? ...空文字 または - の探索

$... 行末


以上。

0
0
2

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0