[PHP-users 18096]Re: 住所文字列の分割

Ryuzo KOSAKI kosaki @ fip.fujitsu.com
2003年 9月 26日 (金) 11:57:41 JST


こさきです。

"[PHP-users 18094]Re: 住所文字列の分割" の記事において 
titi @ beefarm.jpさん は書きました。

>ちなみに、私が知っている地名には「市村(いちむら)」というものがあります
>(笑)。都道府県以下にも落とし穴がいっぱい。。。

違う県で同じ名前の市もありますね。

>if(mb_ereg("^福岡県福岡市東区",$str))		//私、福岡在住なので

結局、このように都道府県名を含む前方一致で検索する必要がありそうです。
郵便番号一覧では、市区町村は3,323件ありました。こんな感じ。

コード,都道府県,市区町村
01101,北海道,札幌市中央区
01102,北海道,札幌市北区
01103,北海道,札幌市東区
01104,北海道,札幌市白石区
01105,北海道,札幌市豊平区
..
..
47375,沖縄県,宮古郡多良間村
47381,沖縄県,八重山郡竹富町
47382,沖縄県,八重山郡与那国町

こいつを配列にぶちこんで、ぐるぐる回して元の文字列と前方一致で比較して
mb_ereg("^${都道府県}${市区町村}",$str)
マッチしたらkenとcityに値を代入し、残りをtownに入れればよさそうです。



PHP-users メーリングリストの案内