程序员社区

Lucene分词器

HellJava面试手册o,欢迎来到程序员社区。 今天聊一聊 Lucene分词器,希望对大家有所帮助。

Java面试手册PD编程电子书汇总F下载:http://117.78.51.75/219-2

英文分词器

步骤:Creates a searcher searchiJava面试手册ng the index in the named directory

切分关键词

Creates
a
searcher
searching
the
index
the
named
directory

去除停用词

停用词:有些词在文本中出现的频率非常高。但对本文的语义产生不了多大的影响。例如英文的a、an、the、of等。或中文的”的、了、呢等”。这样的词称为停用词。停用词经常被过滤掉,不会被进行索引。在检索的过程中,如果用户的查询词中含有停用词,系统会自动过滤掉。停用词可以加快索引的速度,减少索引库文件的大小。
Creates
searcher
searching
index
named
directory

转为小写(搜索时不区分大小写,因为分词器会帮你转化)

creates
searcher
编程电子书汇总searching
index
named
directory
Lucene分词器插图

Lucene分词器插图1

中文分词器

单字分词

Analyzer analyzer2 = new ChineseAnalyzer();

把汉字一个字一个字分解出来。效率比较低。

Lucene分词器插图2

二分法分词

Lucene分词器插图3

词库分词(IKAnalyzer)

Analyzer analyzer4 = new IKAnalyzer();

编程电子书汇总本上可以把词分出来(经常用的分词器)
Lucene分词器插图4

Lucene分词器插图5

如图:
ext_stopword.dic为停止词的词库,词库里的词都被当作为停止词使用。
IKAnalyzer.cfg.xml为IKAnalyzer的配置文件。
Lucene分词器插图6

Lucene分词器插图7

Lucene分词器插图8

Key为ext_stopwords 为停止词所在的位置。
Key为ext_dict为配置自己的扩展字典所在的位置。如图所示可以在mydict.dic中添加自己所需要的词。

时间不一定能证明很多东西,但是一定能看透很多东西。坚信自己的选择,不动摇,使劲跑,明天会更好。

赞(0) 打赏
未经允许不得转载:IDEA激活码 » Lucene分词器

一个分享Java & Python知识的社区