1. 分词器是什么
分词器,是将用户输入的一段文本,分析成符合逻辑的一种工具。
到目前为止呢,分词器没有办法做到完全的符合人们的要求。和我们有关的分词器有英文的和中文的英文的分词器过程:输入文本-关键词切分-去停用词-形态还原-转为小写中文的分词器分为:单子分词 例:中国人 分成中,国,人二分法人词:例中国人:中国,国人词典分词:有基本的语意来进行分词的,例:中国人分成中国,国人,中国人,现在用的是极易分词和庖丁分词。
停用词:不影响语意的词。网上有很多说分词器效果的,我在这里就不进行多说了。
2. word分词器分的词怎么都是一个词
我们知道,Word中的words对象是Word可以识别的词语,对于汉语词语来说,有的词语和我们的习惯并不完全相符。简单的说就是有的词语在Word
中被认为是一个词语,如 阿波罗 ,有的词语被识别为多个词语,如 一字之差
这样的差别就是Word在分词方面的bug。下面就谈谈如何实现对Word汉语分词自定义。
首先特别要感谢Excelhome论坛sylun兄。之前我还一直固执地认为Word只支持导入英文词典,对于中文词语不支持自定义,是这位哥哥告诉我,可以通过导入微软拼音输入法自造词实现自定义分词效果。我的工作其实就是想办法把这个效果的实现更简单一些:不再必须安装庞大的微软拼音输入法,且一经导入制作的自造词在用户间可以简单实现通用。
效果如下:
1、首先不做任何操作,打开测试文档,点击“统计每段词语数”看看结果。不保存关闭文档。
2、运行Word自造词工具.exe,点击修改按钮。
3、再次打开测试文档,点击“统计每段词语数”看看结果。两次结果是否相同。
原来每一段都被自定义成了一个词语。(回车符除外)
3. java ansj分词器怎么配置
1. 基本分词方式,速度快;
官方示例:
List<Term> parse = BaseAnalysis.parse("让战士们过一个欢乐祥和的新春佳节。");
System.out.println(parse);
result:[让/v, 战士/n, 们/k, 过/ug, 一个/m, 欢乐/a, 祥和/a, 的/uj, 新春/t, 佳节/n, 。/w]
2. 精准分词方式兼顾精度与速度,比较均衡;
官方示例:
List<Term> parse = ToAnalysis.parse("让战士们过一个欢乐祥和的新春佳节。");
System.out.println(parse);
3. NLP分词方式可是未登录词,但速度较慢;
4. solr什么是分词器
分词器的工作是将一串的文本切成 tokens,这些 token 一般是文本的子集。分析器的处理对象时一个字段,分词器则是面对一串文本,分词器读取一串文本,然后将其切割成一堆的 token 对象。
字符串中的空格或连接符会被删除。字符将被添加或者替换,如映射别名,或者缩写替换缩写为正常格式。分词器可能会产生出与原字段值不一致的token,或者长度与原始文本不一致。这个在token元数据用于文本字段高亮搜索结果时需要注意。
<</code>fieldType name="text" class="solr.TextField">
<</code>analyzer>
<</code>tokenizer class="solr.StandardTokenizerFactory"/>
</</code>analyzer>
</</code>fieldType>;元素的类名称不是一个真实的分词器,但是它指向一个实现了org.apache.solr.analysis.TokenizerFactory接口的类。这个工厂在需要的时候会创建一个分词器的实例。工厂创建出来的对象必须继承 org.apache.lucene.analysis.TokenStream.
5. 求高手给我用java编写一个英文单词分词器
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
public class Danci {
public static void main(String[] args){
String str = new String();
System.out.print("请输入一个英文句子:");
try{
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));//获取键盘输入
str = br.readLine();
}catch(IOException e){
e.printStackTrace();
}
String []s = str.split(" ");//转换成数组
System.out.println("你输入的句子共有单词 "+s.length+" 个");//s.length获取数组长度
}
}
//此程序只能获取一句话的单词个数.