今回は電話番号を正規表現を使って該当する番号とそうでない番号の仕分をする方法について
書きます。※自分用
★ハイフンを端折って正規表現
var phonenum = ‘080-4545-4545’
var custumTel = phonenum.replace(/[━.‐.―.-.-.ー.-]/gi,”);
if (!custumTel.match(/^(0[5-9]0[0-9]{8}|0[1-9][1-9][0-9]{7})$/)) {
console.log(“エラーです。”)
}
/: 文字列の囲み線
^ : 文字列の始まり
$ :文字列の終わり
同様に固定番号はこちら
/^(0[1-9][1-9][0-9]{7})$/
★ハイフン付きの携帯番号を正規表現
var phonenum = ‘080-4545-4545’
if (!phonenum.match(/^(0[5-9]0-[0-9]{4}-[0-9]{4})$/)) {
console.log(“エラーです。”)
} else {
console.log(‘正常です’);
}
★固定番号
var phonenum = ‘0523-99-9999’
if (!phonenum.match(/^(0[0-9]{3}-[0-9]{2}-[0-9]{4})$/)) {
console.log(“エラーです。”)
} else {
console.log(‘正常です’);
}
★両方チェック
if (!phonenum.match(/^(0[5-9]0-[0-9]{4}-[0-9]{4}|0[0-9]{3}-[0-9]{2}-[0-9]{4})$/)) {
console.log(“エラーです。”)
} else {
console.log(‘正常です’);
}
市外局番は他に2ケタと3ケタもあるので実用的にするならもっと追加する必要が4あります。