4 个版本 (2 个稳定版)
使用旧的 Rust 2015
1.0.1 | 2016 年 8 月 30 日 |
---|---|
1.0.0 | 2016 年 8 月 28 日 |
0.1.1 | 2015 年 11 月 18 日 |
0.1.0 | 2015 年 11 月 18 日 |
在 文本处理 中排名第 1445
每月下载 2,740 次
13KB
233 行(不含注释)
N-gram
这个 crate 接收一个标记序列,并为其生成一个 n-gram。有关 n-gram 的更多信息,请查看维基百科:https://en.wikipedia.org/wiki/N-gram
注意:该 crate 的规范版本托管在 Gitlab
用法
最简单的方法可能是使用迭代器适配器。如果您的标记是字符串(&str、String、char 或 Vec),您只需生成标记流即可
use ngrams::Ngram;
let grams: Vec<_> = "one two three".split(' ').ngrams(2).collect();
// => vec![
// vec!["\u{2060}", "one"],
// vec!["one", "two"],
// vec!["two", "three"],
// vec!["three", "\u{2060}"],
// ]
(关于 "\u{2060}":我们在标记流的开始和结束处使用 unicode WORD JOINER
符号作为填充。)
如果您的标记类型不是列出的类型之一,您仍然可以通过为您的类型实现 ngram::Pad
trait 来使用迭代器适配器。
依赖项
~120KB