Get the App
SLTechnology News&Howtos  ›  Internet Technology  › 

How to implement HanLP word Separator HanLPTokenizer

Shulou Source: shulou.com Published: 2022-06-01 08:00:09 11月12日 Update

How to implement the HanLP word splitter HanLPTokenizer? in view of this problem, this article introduces the corresponding analysis and solution in detail, hoping to help more partners who want to solve this problem to find a more simple and feasible method.

The functional expansion of anlp is mainly reflected in the following aspects:

Keyword extraction

Automatic summary

Phrase extraction

Pinyin conversion

Simple-to-multiplication transformation

Text recommendation

Here is the code for the hanLP word splitter

Note: use maven dependencies

Com.hankcs

Hanlp

Portable-1.3.4

Java8 is used for processing

Import java.util.ArrayList

Import java.util.List

Import java.util.stream.Collectors

Import org.apache.commons.lang3.StringUtils

Import com.hankcs.hanlp.seg.Segment

Import com.hankcs.hanlp.seg.Dijkstra.DijkstraSegment

Import com.hankcs.hanlp.seg.NShort.NShortSegment

Import com.hankcs.hanlp.tokenizer.IndexTokenizer

Import com.hankcs.hanlp.tokenizer.NLPTokenizer

Import com.hankcs.hanlp.tokenizer.SpeedTokenizer

Import com.hankcs.hanlp.tokenizer.StandardTokenizer

Public class HanLPTokenizer {

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)

/ * *

* Standard participle

* @ param text

* @ return

, /

Public static List standard (String text) {

List list = new ArrayList ()

StandardTokenizer.segment (text) .forEach (term-> {

If (StringUtils.isNotBlank (term.word)) {

List.add (term.word)

}

});

Return list.stream (). Distinct (). Collect (Collectors.toList ())

}

/ * *

* NLP participle

* @ param text

* @ return

, /

Public static List nlp (String text) {

List list = new ArrayList ()

NLPTokenizer.segment (text) .forEach (term-> {

If (StringUtils.isNotBlank (term.word)) {

List.add (term.word)

}

});

Return list.stream (). Distinct (). Collect (Collectors.toList ())

}

/ * *

* Index participle

* @ param text

* @ return

, /

Public static List index (String text) {

List list = new ArrayList ()

IndexTokenizer.segment (text) .forEach (term-> {

If (StringUtils.isNotBlank (term.word)) {

List.add (term.word)

}

});

Return list.stream (). Distinct (). Collect (Collectors.toList ())

}

/ * *

* High Speed Dictionary Segmentation

* @ param text

* @ return

, /

Public static List speed (String text) {

List list = new ArrayList ()

SpeedTokenizer.segment (text) .forEach (term-> {

If (StringUtils.isNotBlank (term.word)) {

List.add (term.word)

}

});

Return list

}

/ * *

* N-shortest path participle

* @ param text

* @ return

, /

Public static List nShort (String text) {

List list = new ArrayList ()

N_SHORT_SEGMENT.seg (text) .forEach (term-> {

If (StringUtils.isNotBlank (term.word)) {

List.add (term.word)

}

});

Return list.stream (). Distinct (). Collect (Collectors.toList ())

}

/ * *

* shortest path participle

* @ param text

* @ return

, /

Public static List shortest (String text) {

List list = new ArrayList ()

DIJKSTRA_SEGMENT.seg (text) .forEach (term-> {

If (StringUtils.isNotBlank (term.word)) {

List.add (term.word)

}

});

Return list.stream (). Distinct (). Collect (Collectors.toList ())

}

Public static void main (String [] args) {

String text = "Test do not move 12"

System.out.println ("Standard participle:" + standard (text))

System.out.println ("NLP participle:" + nlp (text))

System.out.println (index participle: + index (text))

System.out.println ("N-shortest path participle:" + nShort (text))

System.out.println ("shortest path participle:" + shortest (text))

System.out.println ("Fast Dictionary Segmentation:" + speed (text))

}

}

This is the answer to the question about how to realize the HanLP participle HanLPTokenizer. I hope the above content can be of some help to you. If you still have a lot of doubts to be solved, you can follow the industry information channel to learn more about it.

Tags: Questions more standards indexes dictionaries help answers easy easy code keys keywords content functions guys buddies pinyin abstracts text methods Apple Docker Huawei Linux macOS MariaDB Microsoft MySQL NVidia OPPO Reno Shulou Information Docker MariaDB MySQL Shulou Technology