電話番号バリデーターとフォーマッター

Googleのlibphonenumberのデータで、各国の電話番号が有効か可能性があるかを判定し、携帯/固定の種別、E.164、国際形式、国内形式に整形します。

国際形式(+…)、または国内番号とデフォルトの国を指定します。

Google の libphonenumber メタデータを使った libphonenumber-js でローカルに検証します。有効な番号は公式の番号計画に一致しますが、未割り当てや解約済みの場合もあります。

電話番号バリデーターとは?

このツールは、電話番号がその国の番号計画に照らして有効かを確認し、E.164、国際形式、国内形式、tel: URI(RFC 3966)形式に整形します。番号計画で判別できる場合は、回線の種別(携帯、固定、フリーダイヤル、有料、VoIPなど)も識別します。

電話番号バリデーターの使い方

  1. 国際形式(+で始まる)の番号、または国内番号を入力します。
  2. 国内番号の場合は、既定の国を選びます。
  3. 判定(有効、桁数のみ可能、無効)、国、回線種別を確認します。
  4. データベースやSMS API向けにはE.164形式を、表示用には国内形式をコピーします。

例

入力
0912 345 678 (default country: Vietnam)
出力
Valid · Vietnam (VN) · Mobile · E.164 +84912345678 · international +84 912 345 678 · national 0912 345 678

+1 650 253 0000 は +16502530000 と (650) 253-0000 になります。

電話番号バリデーターを使うべき場面

保存前に電話番号をE.164に正規化する、フォーム入力を検証する、表示用に番号を整形するといった場面で使います。有効という結果は、番号が公式の計画に適合するという意味にすぎず、未割り当て、番号ポータビリティで移行済み、回線が切断済みの可能性もあり、誰の番号かはツールには分かりません。

電話番号バリデーターの仕組み

検証には、Googleのlibphonenumberから派生した完全な(「max」)メタデータを使ったlibphonenumber-jsを使用します。番号は国番号と国内番号に解析され、その国の回線種別ごとの番号パターンと照合されます。「possible」な番号は、桁数がもっともらしいものの、割り当て済みのどのパターンにも一致しないものです。ライブラリは必要に応じて読み込まれ、すべてブラウザ内で動作します。

一般的な使用例

  • 0912 345 678 のような国内番号を、SMSゲートウェイ向けに +84912345678 に変換する。
  • SMSを送る前に、番号が携帯かどうかを確認する。
  • CRMのエクスポートにある電話番号を、1つの形式に整える。
  • 請求書やWebサイト向けに、国際番号を整形する。

よくある質問

E.164とは何ですか。

ITUの標準形式で、+に続けて国番号と国内番号をスペースなしで並べた最大15桁の形式です(例: +442079460958)。ほとんどのAPIがこの形式を期待します。

米国の番号が「landline or mobile」と表示されるのはなぜですか。

北米番号計画では、携帯と固定の番号が同じ範囲を共有しているため、番号だけでは種別を判別できません。

番号はサーバーに送信されますか。

いいえ。検証は、同梱のメタデータを使ってローカルで実行されます。

他のカテゴリを見る