所有分詞器都是 Segment
的子類, Segment
提供以下配置接口:
// 設為索引模式 public Segment enableIndexMode(boolean enable) //開啟詞性標注 public Segment enablePartOfSpeechTagging(boolean enable) //開啟人名識別 public Segment enableNameRecognize(boolean enable) //開啟地名識別 public Segment enablePlaceRecognize(boolean enable) //開啟機構名識別 public Segment enableOrganizationRecognize(boolean enable) //是否啟用用戶詞典 public Segment enableCustomDictionary(boolean enable) //是否啟用音譯人名識別 public Segment enableTranslatedNameRecognize(boolean enable) //是否啟用日本人名識別 public Segment enableJapaneseNameRecognize(boolean enable) //是否啟用偏移量計算(開啟后Term.offset才會被計算) public Segment enableOffset(boolean enable) //是否啟用所有的命名實體識別 public Segment enableAllNamedEntityRecognize(boolean enable)
用戶可以使用鏈式語法對Segment執行創建和配置操作,一氣呵成:
Segment shortestSegment = new ViterbiSegment().enableCustomDictionary(false).enablePlaceRecognize(true).enableOrganizationRecognize(true);
對於工具類中的分詞器,也可以使用暴露出來的SEGMENT成員對其進行配置:
String text = "澤田依子是上外日本文化經濟學院的外教"; System.out.println(StandardTokenizer.segment(text)); StandardTokenizer.SEGMENT.enableAllNamedEntityRecognize(true); System.out.println(StandardTokenizer.segment(text));
線程安全性
除了配置方法不作保證外,任何分詞器都是線程安全的。
詳細文檔:http://hanlp.linrunsoft.com/doc/_build/html/segment.html