com.hankcs.hanlp.seg
类 Segment

java.lang.Object
  继承者 com.hankcs.hanlp.seg.Segment
直接已知子类:
CharacterBasedGenerativeModelSegment, DictionaryBasedSegment, WordBasedGenerativeModelSegment

public abstract class Segment
extends Object

分词器(分词服务)
是所有分词器的基类(Abstract)
分词器的分词方法是线程安全的,但配置方法则不保证

作者:
hankcs

字段摘要
protected  Config config
          分词器配置
 
构造方法摘要
Segment()
          构造一个分词器
 
方法摘要
protected static List<AtomNode> atomSegment(char[] charArray, int start, int end)
          原子分词
protected static List<Vertex> combineByCustomDictionary(List<Vertex> vertexList)
          使用用户词典合并粗分结果
 Segment enableAllNamedEntityRecognize(boolean enable)
          是否启用所有的命名实体识别
 Segment enableCustomDictionary(boolean enable)
          是否启用用户词典
 Segment enableIndexMode(boolean enable)
          设为索引模式
 Segment enableJapaneseNameRecognize(boolean enable)
          是否启用日本人名识别
 Segment enableMultithreading(boolean enable)
          开启多线程
 Segment enableMultithreading(int threadNumber)
          开启多线程
 Segment enableNameRecognize(boolean enable)
          开启人名识别
 Segment enableNumberQuantifierRecognize(boolean enable)
          是否启用数词和数量词识别
即[二, 十, 一] => [二十一],[十, 九, 元] => [十九元]
 Segment enableOffset(boolean enable)
          是否启用偏移量计算(开启后Term.offset才会被计算)
 Segment enableOrganizationRecognize(boolean enable)
          开启机构名识别
 Segment enablePartOfSpeechTagging(boolean enable)
          开启词性标注
 Segment enablePlaceRecognize(boolean enable)
          开启地名识别
 Segment enableTranslatedNameRecognize(boolean enable)
          是否启用音译人名识别
protected  void mergeNumberQuantifier(List<Vertex> termList, WordNet wordNetAll, Config config)
          合并数字
protected static List<AtomNode> quickAtomSegment(char[] charArray, int start, int end)
          快速原子分词,希望用这个方法替换掉原来缓慢的方法
 List<Term> seg(char[] text)
          分词
 List<Term> seg(String text)
          分词
此方法是线程安全的
 List<List<Term>> seg2sentence(String text)
          分词断句 输出句子形式
protected abstract  List<Term> segSentence(char[] sentence)
          给一个句子分词
protected static List<AtomNode> simpleAtomSegment(char[] charArray, int start, int end)
          简易原子分词,将所有字放到一起作为一个词
 
从类 java.lang.Object 继承的方法
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

字段详细信息

config

protected Config config
分词器配置

构造方法详细信息

Segment

public Segment()
构造一个分词器

方法详细信息

atomSegment

protected static List<AtomNode> atomSegment(char[] charArray,
                                            int start,
                                            int end)
原子分词

参数:
charArray -
start - 从start开始(包含)
end - 到end结束(不包含end)
返回:
一个列表,代表从start到from的所有字构成的原子节点

simpleAtomSegment

protected static List<AtomNode> simpleAtomSegment(char[] charArray,
                                                  int start,
                                                  int end)
简易原子分词,将所有字放到一起作为一个词

参数:
charArray -
start -
end -
返回:

quickAtomSegment

protected static List<AtomNode> quickAtomSegment(char[] charArray,
                                                 int start,
                                                 int end)
快速原子分词,希望用这个方法替换掉原来缓慢的方法

参数:
charArray -
start -
end -
返回:

combineByCustomDictionary

protected static List<Vertex> combineByCustomDictionary(List<Vertex> vertexList)
使用用户词典合并粗分结果

参数:
vertexList - 粗分结果
返回:
合并后的结果

mergeNumberQuantifier

protected void mergeNumberQuantifier(List<Vertex> termList,
                                     WordNet wordNetAll,
                                     Config config)
合并数字

参数:
termList -

seg

public List<Term> seg(String text)
分词
此方法是线程安全的

参数:
text - 待分词文本
返回:
单词列表

seg

public List<Term> seg(char[] text)
分词

参数:
text - 待分词文本
返回:
单词列表

seg2sentence

public List<List<Term>> seg2sentence(String text)
分词断句 输出句子形式

参数:
text - 待分词句子
返回:
句子列表,每个句子由一个单词列表组成

segSentence

protected abstract List<Term> segSentence(char[] sentence)
给一个句子分词

参数:
sentence - 待分词句子
返回:
单词列表

enableIndexMode

public Segment enableIndexMode(boolean enable)
设为索引模式

返回:

enablePartOfSpeechTagging

public Segment enablePartOfSpeechTagging(boolean enable)
开启词性标注

参数:
enable -
返回:

enableNameRecognize

public Segment enableNameRecognize(boolean enable)
开启人名识别

参数:
enable -
返回:

enablePlaceRecognize

public Segment enablePlaceRecognize(boolean enable)
开启地名识别

参数:
enable -
返回:

enableOrganizationRecognize

public Segment enableOrganizationRecognize(boolean enable)
开启机构名识别

参数:
enable -
返回:

enableCustomDictionary

public Segment enableCustomDictionary(boolean enable)
是否启用用户词典

参数:
enable -

enableTranslatedNameRecognize

public Segment enableTranslatedNameRecognize(boolean enable)
是否启用音译人名识别

参数:
enable -

enableJapaneseNameRecognize

public Segment enableJapaneseNameRecognize(boolean enable)
是否启用日本人名识别

参数:
enable -

enableOffset

public Segment enableOffset(boolean enable)
是否启用偏移量计算(开启后Term.offset才会被计算)

参数:
enable -
返回:

enableNumberQuantifierRecognize

public Segment enableNumberQuantifierRecognize(boolean enable)
是否启用数词和数量词识别
即[二, 十, 一] => [二十一],[十, 九, 元] => [十九元]

参数:
enable -
返回:

enableAllNamedEntityRecognize

public Segment enableAllNamedEntityRecognize(boolean enable)
是否启用所有的命名实体识别

参数:
enable -
返回:

enableMultithreading

public Segment enableMultithreading(boolean enable)
开启多线程

参数:
enable - true表示开启4个线程,false表示单线程
返回:

enableMultithreading

public Segment enableMultithreading(int threadNumber)
开启多线程

参数:
threadNumber - 线程数量
返回:


Copyright © 2014–2015 鐮佸啘鍦�/a>. All rights reserved.