11 个稳定版本
2.1.6 | 2024年2月24日 |
---|---|
2.1.5 | 2023年11月11日 |
2.1.4 | 2023年6月3日 |
2.1.3 | 2023年3月28日 |
0.1.0 | 2020年12月31日 |
#136 在 文本处理
215 每月下载
19MB
425 代码行
chinese_dictionary
关于
一个可搜索的中英词典,包含实用的工具。
功能
- 支持使用繁体中文、简体中文、带声调的拼音、带声数字的拼音、不带声调的拼音和英语进行搜索。
- 将文本分类为英语、拼音或中文字符。
- 在繁体中文和简体中文之间进行转换。
- 使用基于词典的分割方法对中文字符进行分词。
用法
查询词典
extern crate chinese_dictionary;
use chinese_dictionary::query;
// Querying the dictionary returns an `Option<Vec<&WordEntry>>`
// Read more about the WordEntry struct below
let text = "to run";
let results = query(text).unwrap();
assert_eq!("执行", results[0].simplified);
分类一段文本
extern crate chinese_dictionary;
use chinese_dictionary::{ClassificationResult, classify};
// Read more about the ClassificationResult enum below
assert_eq!(ClassificationResult::PY, classify("nihao"));
在繁体中文和简体中文之间转换
extern crate chinese_dictionary;
use chinese_dictionary::{simplified_to_traditional, traditional_to_simplified};
assert_eq!("简体字", traditional_to_simplified("簡體字"));
assert_eq!("繁體字", simplified_to_traditional("繁体字"));
分割字符串
extern crate chinese_dictionary;
use chinese_dictionary::{tokenize};
assert_eq!(vec!["今天", "天气", "不错"], tokenize("今天天气不错"));
WordEntry
结构体
extern crate chinese_dictionary;
use chinese_dictionary::{MeasureWord, WordEntry};
let example_measure_word = MeasureWord {
traditional: "example_traditional".to_string(),
simplified: "example_simplified".to_string(),
pinyin_marks: "example_pinyin_marks".to_string(),
pinyin_numbers: "example_pinyin_numbers".to_string(),
};
let example = WordEntry {
traditional: "繁體字".to_string(),
simplified: "繁体字".to_string(),
pinyin_marks: "fán tǐ zì".to_string(),
pinyin_numbers: "fan2 ti3 zi4".to_string(),
english: vec!["traditional Chinese character".to_string()],
tone_marks: vec![2 as u8, 3 as u8, 4 as u8],
hash: 000000 as u64,
measure_words: vec![example_measure_word],
hsk: 6 as u8,
word_id: 11111111 as u32,
};
ClassificationResult
枚举
ClassificationResult
枚举的可能值包括
PY
:代表拼音EN
:代表英语ZH
:代表中文UN
:代表不确定的分类结果
许可证
本软件遵循MIT 许可证。
本项目使用来自CC-CEDICT的数据,遵循Creative Commons Attribution-Share Alike 4.0 许可证。这些数据已被格式化以与本项目配合使用。位于 .dictionary
文件夹内的 data/
目录下的文件遵循Creative Commons Attribution-Share Alike 4.0 许可证。
依赖项
~7MB
~35K SLoC