SimpleAnlyzer|学习笔记

简介: 快速学习 SimpleAnlyzer

开发者学堂课程【Lucene 知识精讲与实战(上) SimpleAnlyzer】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/700/detail/12341


SimpleAnlyzer


SimpleAnlyzer 翻译过来是简单的分词器的意思,它的特点是:

把除字母以外的符号全部清除,对于字母,会把所有的字母变为小写,并且还会把数字去除,同样也不支持中文。

1.测试

在测试方法中对它进行测试。将测试代码进行复制,粘贴到测试类里面。

(1)请看以下代码:

/**

*简单分词器:不支持中文,将除了字母之外的所有符号全部去除,所有大写字母转换成小写字母,对于数字也会去除

*@throws Exception

*/

@Test

public void TestwhitespaceAnalyzer throws Exception{

//1.创建分词器,分析文档,对文档进行分词

Analyzer analyzer new WhitespaceAnalyzer ();

//2.创建 Directory 对象,声明索引库的位置

Directory directory = FSDirectory.open(Paths.get("E:\\dir"));

//3、创建 IndexwriteConfig 对象,写入索引需要的配置

IndexwriterConfig config = new IndexwriterConfig(analyzer);

//4.创建 Indexwriter 写入对象

Indexwriter indexwriter = new Indexwriter(directory,config);

/5.写入到索引库,通过 Indexwriter 添加文档对象 document

Document doc = new Document

doc.add(new TextField("name","vivo X238GB+128GB 幻夜蓝",Field.Store.YEs));

indexwriter.addDocument (doc);

//6.释放资源

indexwriter.close();

}

(2)把 look 小工具关闭,否则会占用磁盘,导致写入失败。

(3)把索引库中之前的数据清除,如图:

image.png

(4)执行测试代码,如图:

image.png

关于它的测试代码,和之前的是一样的,变化的只有使用的分词器。

(5)执行成功后打开 look 小工具,查看它的分词效果。如图:

image.png

可以看到,分成了四个词:幻夜蓝、x、vivo 和 gb 。在这里面没有出现数字并且也没有出现标点符号。

Document doc = new Document();

Doc.add(new TextField(“name”,”vivo,x23。 8GB=128GB; 幻夜蓝”,Field.Store.YES));

indexWriter.addDocument(doc);

对比分词前的原文:

①原文有加号,逗号等标点符号,而在分词后这些都被去掉了。

②它不支持中文,对中文没有进行切分词,中文全部是连成一块的。

③所有的大写字母都转换成了小写字母。

以上就是简单分词器的效果,接下来继续学习其他分词器。

相关文章
|
物联网 Linux 开发者
Mycp|学习笔记
快速学习 Mycp
82 0
Mycp|学习笔记
|
开发工具 Android开发 iOS开发
快速开始|学习笔记
快速学习快速开始
82 0
快速开始|学习笔记
|
数据可视化 开发工具
超详细的vimtutor学习笔记(下)
第一讲 编辑 1.1 移动光标 使用 h、j、k、l 键可以使光标实现左、下、上、右的移动。 也可以使用 ↑ ↓ ← → 进行上下左右的移动。
68 0
|
人工智能 开发者
特征空间与应用 | 学习笔记
快速学习特征空间与应用
105 0
特征空间与应用 | 学习笔记
|
开发者 索引
matchAllQuery | 学习笔记
快速学习 matchAllQuery
117 0
matchAllQuery | 学习笔记
|
机器学习/深度学习 算法 数据处理
总结与练习|学习笔记
快速学习总结与练习。
113 0
|
移动开发 JavaScript HTML5
NgForm学习笔记
NgForm学习笔记
115 0
NgForm学习笔记
|
Java 程序员 开发者
投票选举|学习笔记
快速学习投票选举
102 0
投票选举|学习笔记
学习笔记
学习笔记,各个方面
125 0
|
弹性计算 安全
学习笔记1
ECS云服务器介绍
1227 0
学习笔记1