ハイフンなしの電話番号を、ハイフンありに変換する方法
国内の固定電話番号について、ハイフンなしの電話番号に、ハイフンを付与してみます(例 011XXXXXXX → 011-XXX-XXXX)。市外局番によってハイフンを入れる位置が変わってくるため、単純な方法ではできません。
国内の固定電話番号について
今回は、国内の固定電話の電話番号について、ハイフンをつけるワークフローを作成してみます。
注意
国内の固定電話番号は、「0(国内固定の番号)」「市外局番」「市内局番」「利用者番号」で構成される10桁の電話番号です。080 や 090 から始まる携帯電話の番号や、0120 から始まるフリーダイヤルなど、市外局番、市内局番が使われていない電話番号については、今回のフローでは扱っていません。
まず、固定電話の電話番号がどのように構成されているか見てみましょう。
電話番号は、大きく分けて市外局番、市内局番、利用者番号の3つのグループで構成されています。下図で赤いハイフン(-)が入っている箇所が、今回電話番号でハイフンを付与していく場所です。
電話番号について、詳しくは総務省のこちらのページ fa-share-square-oをご参照ください。
ハイフンなしの電話番号に、ハイフンありに変換してみよう
国内の固定電話の電話番号にハイフンを付与するワークフローを作成してみると、下のようになります。
大きく分けて、4つの工程でハイフンを付与していきます。
① 総務省ホームページから、全国の市外局番一覧(市外局番・市内局番の一覧)を取得する(インプットの準備)
② 市外局番一覧から、市外局番ごとにハイフンを入れる位置(桁数)を算出する
③ ハイフンを入れたい電話番号に対して、市外局番一覧から一致する番号を探し、ハイフンを入れる位置(桁数)を取得する
④ 電話番号にハイフンを付与する
① 全国の市外局番一覧(市外局番・市内局番の一覧)を用意する
今回作成するワークフローでは、ハイフンを付与する電話番号は、国内の固定電話の番号のみを対象としています。
総務省のホームページから、市外局番の一覧を取得します。こちらの総務省ホームページ fa-share-square-oから、Excel形式で全国の市外局番の一覧を取得します。
取得した市外局番の Excel の中で、ハイフンの付与に必要なのは市外局番、市内局番の2列です。今回のワークフローでは、取得した一覧を下のように一つにまとめてインプットに使っていきます。(イメージがしやすいように、例では番号区画の列も残しています。)
出典:総務省ホームページ (https://www.soumu.go.jp/main_sosiki/joho_tsusin/top/tel_number/number_shitei.html)
② 市外局番一覧から、市外局番ごとにハイフンを入れる位置(桁数)を算出する
①で作成した市外局番一覧の Excel に対して、それぞれ市外番号、市内番号の桁数を取得していきます。最初の「0」と市外局番・市内局番は、合わせると必ず5桁になります。
まず、①で作成した市外局番一覧の Excel をインプットとして読み込み、「市内局番」列のアルファベットから市内局番の桁数を付与します。(「市内局番」列が E なら 1桁、DE なら 2桁、CDE なら 3桁になります。加入者番号は4桁で固定になっています。)
集計ツールで重複を削除し、市外局番に対して先頭に「0」を付与します。(国内プレフィックス)
ここで取得した「市外局番」「市内局番桁数」「加入者番号桁数」を、次の③で実際の電話番号に付与していきます。
例:「市外局番」列に 11 の値、「市内局番」列に CDE の値が入っている場合、電話番号は「011 - XXX(市内番号3桁) - XXXX(加入者番号4桁)」となります。
③ 電話番号に対して、一致する市外局番を探し、ハイフンを入れる位置(桁数)を取得する
次に、ハイフンを付与したい電話番号データを読み込みます。(今回は例として、テキスト入力で適当な数字を文字列「Tel」として読み込んでいます。)
国内の固定電話番号は10桁であるはずなので、10桁以外のものはハイフンを付与できない番号としてフィルタツールを使ってはじいています。
次に検索置換ツールを使って、電話番号「Tel」列の先頭に対し、②で作成した「市外局番」列と一致するものを検索し、一致するものに②で作成した情報を付与します。
検索置換ツールで「市外局番」が一致しなかった電話番号は、フィルタツールを使ってハイフンが付与できない番号として除外しています。
これで、電話番号の市外局番、市内局番、加入者番号の桁数が算出できました。
④ 電話番号にハイフンを付与する
③で取得した市外局番、市内局番、加入者番号の桁数を元に、フォーミュラツールを使って電話番号「Tel」列にハイフン(-)を付与します。
ハイフン付きの電話番号「TEL(-付き)」列が取得できました。
サンプルワークフロー ダウンロード
PhoneNumber fa-download
同梱のデータは、「電気通信番号の指定状況(https://www.soumu.go.jp/main_sosiki/joho_tsusin/top/tel_number/number_shitei.html)」のデータを加工して作成しております。
※Alteryx Designer 2020.4.5.12471時点の情報です