赞
踩
hanlp分词
1.标准分词器:StandardTokenizer
2.NLP分词器:NLPTokenizer
3.索引分词器:IndexTokenizer
4.N-最短路径分词器:SpeedTokenizer
5.最短路径分词
6.极速词典分词
- 依賴:
- <dependency>
- <groupId>com.hankcs.hanlp.restful</groupId>
- <artifactId>hanlp-restful</artifactId>
- <version>0.0.7</version>
- </dependency>
- <dependency>
- <groupId>com.hankcs</groupId>
- <artifactId>hanlp</artifactId>
- <version>portable-1.3.4</version>
- </dependency>
- 实战案例:
-
- public class HanLP{
- private static final Segment N_SHORT_SEGMENT = new NShortSegment().enableCustomDictionary(false).enablePlaceRecognize(true).enableOrganizationRecognize(true);
- private static final Segment DIJKSTRA_SEGMENT = new DijkstraSegment().enableCustomDictionary(false).enablePlaceRecognize(true).enableOrganizationRecognize(true);
- public static Map<String, String> segMore(String text) {
- Map<String, String> map = new HashMap<>();
- map.put("标准分词", standard(text));
- map.put("NLP分词", nlp(text));
- map.put("索引分词", index(text));
- map.put("N-最短路径分词", nShort(text));
- map.put("最短路径分词", shortest(text));
- map.put("极速词典分词", speed(text));
- return map;
- }
- private static String standard(String text) {
- StringBuilder result = new StringBuilder();
- StandardTokenizer.segment(text).forEach(term->result.append(term.word).append(" "));
- return result.toString();
- }
- private static String nlp(String text) {
- StringBuilder result = new StringBuilder();
- NLPTokenizer.segment(text).forEach(term->result.append(term.word).append(" "));
- return result.toString();
- }
- private static String index(String text) {
- StringBuilder result = new StringBuilder();
- IndexTokenizer.segment(text).forEach(term->result.append(term.word).append(" "));
- return result.toString();
- }
- private static String speed(String text) {
- StringBuilder result = new StringBuilder();
- SpeedTokenizer.segment(text).forEach(term->result.append(term.word).append(" "));
- return result.toString();
- }
- private static String nShort(String text) {
- StringBuilder result = new StringBuilder();
- N_SHORT_SEGMENT.seg(text).forEach(term->result.append(term.word).append(" "));
- return result.toString();
- }
- private static String shortest(String text) {
- StringBuilder result = new StringBuilder();
- DIJKSTRA_SEGMENT.seg(text).forEach(term->result.append(term.word).append(" "));
- return result.toString();
- }
- public static void main(String[] args) {
- // Map<String,String> map = segMore("借鉴hashmap算法找出可以hash的key值");
- Map<String,String> map = segMore("找出test中华人民共和国人民解放军English");
- System.out.println(map.get("标准分词"));
- System.out.println(map.get("NLP分词"));
- System.out.println(map.get("索引分词"));
- System.out.println(map.get("N-最短路径分词"));
- System.out.println(map.get("最短路径分词"));
- System.out.println(map.get("极速词典分词"));
- }
- }
- 运行结果:
-
- 标准分词:找出 test 中华人民共和国 人民解放军 English
- NLP分词:找出 test 中华人民共和国 人民解放军 English
- 索引分词:找出 test 中华人民共和国 中华 华人 人民 共和国 共和 人民解放军 人民 解放军 解放 English
- N-最短路径分词:找 出 test 中华人民共和国 人民 解放军 English
- 最短路径分词:找 出 test 中华人民共和国 人民 解放军 English
- 极速词典分词:找 出 t e s t 中华人民共和国 人民 解放军 E n g l i s h
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。