JavaScriptで住所から都道府県を抜き出す

JavaScriptで住所から都道府県を抜き出して表示する処理方法です。

住所の最初が都道府県から始まっていることが条件です。

都道府県を判定する

サンプルでは「都道府県と県庁所在地」から都道府県を抜き出します。

住所の最初が都道府県から始まっていることが条件です。

const prefList = [
  '北海道札幌市',
  '青森県青森市',
  '岩手県盛岡市',
  '宮城県仙台市',
  '秋田県秋田市',
  '山形県山形市',
  '福島県福島市',
  '茨城県水戸市',
  '栃木県宇都宮市',
  '群馬県前橋市',
  '埼玉県さいたま市',
  '千葉県千葉市',
  '東京都新宿区',
  '神奈川県横浜市',
  '新潟県新潟市',
  '富山県富山市',
  '石川県金沢市',
  '福井県福井市',
  '山梨県甲府市',
  '長野県長野市',
  '岐阜県岐阜市',
  '静岡県静岡市',
  '愛知県名古屋市',
  '三重県津市',
  '滋賀県大津市',
  '京都府京都市',
  '大阪府大阪市',
  '兵庫県神戸市',
  '奈良県奈良市',
  '和歌山県和歌山市',
  '鳥取県鳥取市',
  '島根県松江市',
  '岡山県岡山市',
  '広島県広島市',
  '山口県山口市',
  '徳島県徳島市',
  '香川県高松市',
  '愛媛県松山市',
  '高知県高知市',
  '福岡県福岡市',
  '佐賀県佐賀市',
  '長崎県長崎市',
  '熊本県熊本市',
  '大分県大分市',
  '宮崎県宮崎市',
  '鹿児島県鹿児島市',
  '沖縄県那覇市'
];

prefList.map(str => {
  const pref = str.match(/..+?[都道府県]/);
  console.log(pref[0]);
});

出力結果は下記になります。

北海道
青森県
岩手県
宮城県
秋田県
山形県
福島県
茨城県
栃木県
群馬県
埼玉県
千葉県
東京都
神奈川県
新潟県
富山県
石川県
福井県
山梨県
長野県
岐阜県
静岡県
愛知県
三重県
滋賀県
京都府
大阪府
兵庫県
奈良県
和歌山県
鳥取県
島根県
岡山県
広島県
山口県
徳島県
香川県
愛媛県
高知県
福岡県
佐賀県
長崎県
熊本県
大分県
宮崎県
鹿児島県
沖縄県

京都府が曲者です、match(/.+?[都道府県]/)だと「京都」となり、「京都府」にはなりません。

ドットを2つ連続で条件にするのがコツで、〇〇+?[都道府県]となるので、都道府県の前に2文字以上必要という意味です。

これにより京都府は「京都」ではなく「京都府」となります。

関連記事
最新記事