Paoding 庖丁解牛 分词器基于 Lucene4.x

发布于 2021-01-08 23:50:49 字数 1363 浏览 1372 评论 0

Paoding's Knives 中文分词具有极 高效率 和 高扩展性 。引入隐喻,采用完全的面向对象设计,构思先进。

  • 高效率:在PIII 1G内存个人机器上,1秒 可准确分词 100万 汉字。
  • 采用基于 不限制个数 的词典文件对文章进行有效切分,使能够将对词汇分类定义。
  • 能够对未知的词汇进行合理解析

原项目托管于 google code,但是现在已不能访问,github 和 gitee 上有镜像项目:

分词示例

TokenStream ts = analyzer.tokenStream("text", new StringReader(text));
//添加工具类  注意:以下这些与之前lucene2.x版本不同的地方
CharTermAttribute offAtt = (CharTermAttribute) ts.addAttribute(CharTermAttribute.class);
// 循环打印出分词的结果,及分词出现的位置
while (ts.incrementToken()) {
    System.out.print(offAtt.toString() + "\t");
}

编译说明

项目默认可以使用Maven直接编译.

如果使用 Ant,可把依赖的 lib 放入 {pro_workspace}/target/dependency/ 下。然后使用 ant 可以直接编译,编译的结果存放在 {pro_workspace}/target/dist/{version}/ 下。

可使用 Maven 的 copy-dependencies 命令直接 copy 依赖到 {pro_workspace}/target/dependency/,然后使用 ant 编译。

mvn dependency:copy-dependencies

Solr 4.x 使用说明

Solr 4.x 以上可以直接配置 Lucene 的 Analyzer 配置如:

<fieldType name="text_general" class="solr.TextField">
  <analyzer class="net.paoding.analysis.analyzer.PaodingAnalyzer" />
</fieldType>

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据

关于作者

JSmiles

生命进入颠沛而奔忙的本质状态,并将以不断告别和相遇的陈旧方式继续下去。

0 文章
0 评论
84960 人气
更多

推荐作者

lorenzathorton8

文章 0 评论 0

Zero

文章 0 评论 0

萧瑟寒风

文章 0 评论 0

mylayout

文章 0 评论 0

tkewei

文章 0 评论 0

17818769742

文章 0 评论 0

    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文