A Rust library for parsing Japanese addresses.
Add the following to your Cargo.toml
.
[dependencies]
japanese-address-parser = "0.1"
use japanese_address_parser::parser::Parser;
#[tokio::main]
async fn main() {
let parser: Parser = Default::default();
let parse_result = parser.parse("東京都千代田区丸の内1-1-1").await;
println!("{:?}", parse_result);
}
use japanese_address_parser::parser::Parser;
fn main() {
let parser: Parser = Default::default();
let parse_result = parser.parse_blocking("東京都千代田区丸の内1-1-1"); // `parse_blocking()` is available on `blocking` feature only
println!("{:?}", parse_result);
}
This crate is designed to be buildable for wasm32-unknown-unknown
with wasm-pack
.
Pre-compiled wasm module is available on npmjs.com
npm install @toriyama/japanese-address-parser
import init, {Parser} from "@toriyama/japanese-address-parser"
init().then(() => {
const parser = new Parser()
parser.parse("東京都千代田区丸の内1-1-1").then(parseResult => {
console.log(JSON.stringify(parseResult, null, "\t"))
})
})
This library can be called from the Python world. For more details, see python module's README.
The goals of this library are as follows.
- Supports not only wasm but also multiple platforms and architectures.
- Enables more advanced normalization. For example, provides more detailed analysis than town level.
- Returns the location of the given address.
- Enables processing of town names that no longer exist due to municipal mergers.
This software is maintained by YuukiToriyama. If you have any questions, please create a new issue.
This software was inspired
by @geolonia/normalize-japanese-addresses.
In addition, the parsing process uses Geolonia 住所データ which is
provided by 株式会社Geolonia.
This crate is distributed under the terms of the MIT license.