geolonia / normalize-japanese-addresses

オープンソースの住所正規化ライブラリ。

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

町丁目レベルに長音符 (「ー」) を含む住所で、町丁目レベルの正規化が失敗する

inuatsu opened this issue · comments

お世話になっております。

v2.3.2 を使っているのですが、町丁目レベル (level 3) に長音符 (「ー」) を含む住所で、町丁目レベルの正規化が失敗する事象が確認されております (おそらく v2.3.3 でも再現すると思われます)。

例えば、「広島市西区商工センター六丁目9番39号」というような住所です。README 記載のデモページでも試してみたところ、同様の事象が再現されました。

Screenshot from 2021-11-04 16-20-23

この広島市西区商工センター六丁目は、下画像のように住所データの CSV には該当する住所がございました。

Screenshot from 2021-11-04 16-23-25

正規化結果を見るに、前処理で長音符(「ー」)が半角ハイフンに変換されるため、住所データの該当住所とマッチングできなくなっているように見受けられます。
ソースコードの https://github.com/geolonia/normalize-japanese-addresses/blob/master/src/main.ts#L72-L77 あたりの処理が原因になっているのではないかと思われます (「ー六」と長音符 + 数字の文字列にマッチするので、長音符が半角ハイフンに変換される)。

全国にはこの手の「◯◯センター◯丁目」という住所が複数あり (上の「商工センター」の他に、「流通センター」、「卸センター」など)、前処理時のルールを一部見直した方が良さそうです。

@inuatsu 詳細な報告誠にありがとうございました。

確かに、正規化ロジックで一致しなくなりますね。。。修正に向けようと思います。

@keichan34 お手数おかけいたしますが、よろしくお願いいたします!

@inuatsu 修正版を v2.3.4 としてリリースしました。更新後、挙動が修正されているか確認いただけると幸いです。

@keichan34 早速ご対応いただき、誠にありがとうございました!町丁目レベルに長音符を含む住所でも level 3 まで正規化できていることが確認できました。

確認ありがとううございました!