New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More
Socket
Sign inDemoInstall
Socket

japanese_address_parser

Package Overview
Dependencies
Maintainers
1
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

japanese_address_parser

  • 3.2.0
  • Rubygems
  • Socket score

Version published
Maintainers
1
Created
Source

CI Status Gem Version Maintainability

JapaneseAddressParser

JapaneseAddressParser は日本の住所をパースすることができる Ruby gem です。

住所のパースに使っているのは geolonia/normalize-japanese-addresses です。 npm のライブラリを Ruby のランタイムから呼び出しているため、Node が実行できる環境でしか動作しません。

こちらのページで機能を試すことができます:デモンストレーション | JapaneseAddressParser

インストール

Gemfile にこの行を追加してください:

gem 'japanese_address_parser'

次にこのコマンドを実行してください:

$ bundle install

もしくは gem install をして直接インストールすることもできます:

$ gem install japanese_address_parser

使い方

address = JapaneseAddressParser.call('東京都港区芝公園4-2-8')

address.class #=> JapaneseAddressParser::Models::Address

prefecture = address.prefecture
prefecture.attributes #=> {:code=>"13", :name=>"東京都", :name_kana=>"トウキョウト", :name_romaji=>"TOKYO TO"}

city = address.city
city.attributes #=> {:code=>"13103", :formatted_code=>"13103", :prefecture_code=>"13", :name=>"港区", :name_kana=>"ミナトク", :name_romaji=>"MINATO KU"}

town = address.town
town.attributes #=> {:name=>"芝公園四丁目", :name_kana=>"シバコウエン 4", :name_romaji=>"SHIBAKOEN 4", :nickname=>nil, :latitude=>"35.656459", :longitude=>"139.74764"}

address.full_address #=> "東京都港区芝公園4-2-8"
address.furigana #=> "トウキョウトミナトクシバコウエン 4"

都道府県・市区町村・町域データの属性

都道府県データの属性

クラス:JapaneseAddressParser::Models::Prefecture

属性説明
code都道府県コード"01"
name名前"北海道"
name_kanaふりがな"ホッカイドウ"
name_romajiローマ字"HOKKAIDO"
市区町村データの属性

クラス:JapaneseAddressParser::Models::City

属性説明
code市区町村コード"01101"
formatted_code整形された市区町村コード
市区町村コードがない場合に "UNKNOWN" が入っています。
"01101" / "UNKNOWN"
prefecture_code都道府県コード"01"
name名前"札幌市中央区"
name_kanaふりがな"サッポロシチュウオウク"
name_romajiローマ字"SAPPORO SHI CHUO KU"
町域データの属性

クラス:JapaneseAddressParser::Models::Town

属性説明
name名前"旭ケ丘一丁目"
name_kanaふりがな"アサヒガオカ 1"
name_romajiローマ字"ASAHIGAOKA 1"
nickname小字・通称名
latitude緯度"43.04223"
longitude経度"141.319722"

都道府県や市区町村、町域のそれぞれの属性の値は geolonia/japanese-addresses が提供している CSV ファイルの値そのままです。

JapaneseAddressParser.call(address)

address の値を解析して、都道府県・市区町村・町域のデータを返します。

なんらかの理由で住所の解析に失敗したときは nil を返します。

JapaneseAddressParser.call!(address)

address の値を解析して、都道府県・市区町村・町域のデータを返します。

なんらかの理由で住所の解析に失敗したときは JapaneseAddressParser::NormalizeError の例外を吐きます。

開発

開発に必要なライブラリをインストールするには、このコマンドを実行してください:

bin/setup

開発環境の構築は Docker を使ってもできます。 MacOS でしか試していないので、他プラットフォームで動かなかったら issue でご報告ください。

docker compose build
docker compose run --rm gemsrc sh

自動テストやリンターを実行するには、このコマンドを実行してください:

rake

貢献方法

イシューやプルリクエストは随時お待ちしています。

特に住所の正規化については漏れているケースがまだまだ数多くありそうです。 「この住所だとうまくパースできないよ」くらいの気軽なもので結構ですので、イシューでのご報告をお願いします。

ライセンス

この gem は MIT ライセンス の下でオープンソースとして利用可能です。

行動規範

JapaneseAddressParser に関してコードを書いたりイシューを追加したりする際は 行動規範 に従ってください。

FAQs

Package last updated on 26 Nov 2023

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc