#日语 #词典 #jmdict

jmdict-rs

与JMdict日语词典交互的简单接口

3个版本

0.1.2 2023年7月30日
0.1.1 2023年7月30日
0.1.0 2023年7月29日

#1091 in 数据库接口

Apache-2.0

11KB
133

jmdict-rs

Crates.io Docs License

释放可爱力量!jmdict-rs是一个简单轻量级的Rust库,它提供了一个访问JMdict日语词典的接口。该库不是使用原始XML文件,而是使用来自jmdict-simplified项目的预处理的JSON文件。

为了减少crate大小并提供最新条目,语言数据在构建时从最新的jmdict-simplified版本下载。

安装

将以下内容添加到您的Cargo.toml文件中

[dependencies]
jmdict-rs = "0.1.2"

用法

fn main() -> Result<(), Box<dyn std::error::Error>> {
    let search = "楽勝";
    let entries = jmdict_rs::entries();

    let entry = entries.iter().find(|e| {
        e.kanji.iter().any(|k| k.text == search)
    }).unwrap();

    let texts: Vec<String> = entry.sense.iter().map(|s|
        s.gloss.iter().map(|g|
            g.text.clone()
        )
    ).flatten().collect();
    eprintln!("Search result = {:#?}", texts.iter().next().unwrap());

    Ok(())
}

许可证

JMdict

以JSON文件形式的JMdict起源是jmdict-simplified仓库。鉴于这一点,该文件受其原始来源相同的许可证约束,即EDRDG许可证

其他文件

此项目的源代码和其他文件均受Apache许可证2.0版许可。

依赖关系

~0.7–3.5MB
~62K SLoC