基於HanLP分詞菜鳥使用教程
官網
http://www.hanlp.com/
依賴
<dependency>
<groupId>com.hankcs</groupId>
<artifactId>hanlp</artifactId>
<version>portable-1.7.7</version>
</dependency>
分詞包下載
https://github.com/hankcs/HanLP/tree/1.x
下載後整合項目 代碼可以自動識別到文件
省市縣 地理位置分詞拆解 提取 地名ns
package ustils;
import com.hankcs.hanlp.HanLP;
import com.hankcs.hanlp.corpus.tag.Nature;
import com.hankcs.hanlp.model.perceptron.PerceptronLexicalAnalyzer;
import com.hankcs.hanlp.seg.Segment;
import com.hankcs.hanlp.seg.common.Term;
import java.io.IOException;
import java.util.List;
public class HanLpUtils {
public static void main(String[] args) throws IOException {
// System.out.println(HanLP.segment("你好,歡迎使用HanLP漢語處理包!"));
String word = "2020年廣州市天河區天河南二路2號輸電二所無人機巡視作業招標公告";
//[2020/m, 年/q, 廣州市/ns, 天河區/ns, 天/q, 河南/ns, 二/m, 路/n, 2/m, 號/q, 輸電/vn, 二/m, 所/u, 無人機/n, 巡視/v, 作業/vn, 招標/v, 公告/n]
List<Term> termList= HanLP.segment( word);
for (Term term : termList) {
final Nature nature = term.nature;
System.out.println("nature=====>"+nature);
final boolean ns = term.nature.startsWith("ns");
if(ns){
System.out.println("找到你想要的詞------> "+term.word);
}else {
System.out.println("現在不需要以後有需要------> "+term.word);
}
}
System.out.println(termList.get(0));
System.out.println(termList.toString());
// PerceptronLexicalAnalyzer analyzer = new PerceptronLexicalAnalyzer("data/model/perceptron/pku199801/cws.bin",
// HanLP.Config.PerceptronPOSModelPath,
// HanLP.Config.PerceptronNERModelPath);
// System.out.println(analyzer.analyze("上海華安工業(集團)公司董事長譚旭光和祕書胡花蕊來到美國紐約現代藝術博物館參觀"));
// String[] testCase = new String[]{
// "武勝縣新學鄉政府大樓門前鑼鼓喧天",
// "藍翔給寧夏固原市彭陽縣紅河鎮黑牛溝村捐贈了挖掘機",
// };
// Segment segment = HanLP.newSegment().enablePlaceRecognize(true);
// for (String sentence : testCase)
// {
// List<Term> termList = segment.seg(sentence);
// System.out.println(termList);
// }
}
}
運行結果
nature=====>m
現在不需要以後有需要------> 2020
nature=====>q
現在不需要以後有需要------> 年
nature=====>ns
找到你想要的詞------> 廣州市
nature=====>ns
找到你想要的詞------> 天河區
nature=====>q
現在不需要以後有需要------> 天
nature=====>ns
找到你想要的詞------> 河南
nature=====>m
現在不需要以後有需要------> 二
nature=====>n
現在不需要以後有需要------> 路
nature=====>m
現在不需要以後有需要------> 2
nature=====>q
現在不需要以後有需要------> 號
nature=====>vn
現在不需要以後有需要------> 輸電
nature=====>m
現在不需要以後有需要------> 二
nature=====>u
現在不需要以後有需要------> 所
nature=====>n
現在不需要以後有需要------> 無人機
nature=====>v
現在不需要以後有需要------> 巡視
nature=====>vn
現在不需要以後有需要------> 作業
nature=====>v
現在不需要以後有需要------> 招標
nature=====>n
現在不需要以後有需要------> 公告
2020/m
[2020/m, 年/q, 廣州市/ns, 天河區/ns, 天/q, 河南/ns, 二/m, 路/n, 2/m, 號/q, 輸電/vn, 二/m, 所/u, 無人機/n, 巡視/v, 作業/vn, 招標/v, 公告/n]