#tantivy #chinese #tokenizer #search

cang-jie

tantivy 的中文分词器

16 个重大版本发布

0.18.0 2023年11月4日
0.16.0 2023年6月11日
0.15.0 2023年2月12日
0.14.0 2022年7月13日
0.1.0 2018年9月18日

#21 in #tantivy

Download history 43/week @ 2024-03-13 37/week @ 2024-03-20 76/week @ 2024-03-27 63/week @ 2024-04-03 20/week @ 2024-04-10 11/week @ 2024-04-17 12/week @ 2024-04-24 6/week @ 2024-05-01 12/week @ 2024-05-08 12/week @ 2024-05-15 24/week @ 2024-05-22 30/week @ 2024-05-29 13/week @ 2024-06-05 5/week @ 2024-06-12 22/week @ 2024-06-19 90/week @ 2024-06-26

每月 132 次下载
8 crate 中使用 (直接使用 5 个)

MIT 许可证

7KB
101 代码行

cang-jie(仓颉)

Crates.io latest document dependency status

基于 tantivyjieba-rs 的中文分词器。

目前仅支持 UTF-8。

示例

    let mut schema_builder = SchemaBuilder::default();
    let text_indexing = TextFieldIndexing::default()
        .set_tokenizer(CANG_JIE) // Set custom tokenizer
        .set_index_option(IndexRecordOption::WithFreqsAndPositions);
    let text_options = TextOptions::default()
        .set_indexing_options(text_indexing)
        .set_stored();
    // ... Some code   
     let index = Index::create(RAMDirectory::create(), schema.clone())?;
     let tokenizer = CangJieTokenizer {
                        worker: Arc::new(Jieba::empty()), // empty dictionary
                        option: TokenizerOption::Unicode,
                     };
     index.tokenizers().register(CANG_JIE, tokenizer); 
    // ... Some code

完整示例

依赖项

~29MB
~424K SLoC