在Java中实现中文分词,可以使用一些流行的中文分词库,如IK Analyzer、jieba分词和Fst。下面是使用IK Analyzer和jieba分词的简单示例。
- IK Analyzer
首先,需要下载IK Analyzer的jar包,下载地址:https://github.com/belerweb/IK-Analyzer/releases
将下载的jar包添加到项目的依赖中。然后,可以使用以下代码实现中文分词:
import org.wltea.analyzer.lucene.IKTokenizerFactory; import org.wltea.analyzer.lucene.IKAnalyzer; import org.apache.lucene.analysis.TokenStream; import org.apache.lucene.analysis.tokenattributes.CharTermAttribute; public class IK AnalyzerDemo { public static void main(String[] args) { String text = "我爱自然语言处理技术"; IKAnalyzer ikAnalyzer = new IKAnalyzer(); ikAnalyzer.setParameter("ext_stopwords", "stopwords.txt"); // 设置扩展停用词 ikAnalyzer.setParameter("use_bigram", "true"); // 设置使用双词模式 ikAnalyzer.setParameter("use_paddle", "false"); // 设置不使用Paddle模型 try (TokenStream tokenStream = ikAnalyzer.tokenStream("content", text)) { CharTermAttribute attr = tokenStream.addAttribute(CharTermAttribute.class); tokenStream.reset(); while (tokenStream.incrementToken()) { System.out.println(attr.toString()); } tokenStream.end(); } catch (Exception e) { e.printStackTrace(); } } }
- jieba分词
首先,需要下载jieba分词的jar包,下载地址:https://github.com/fxsjy/jieba
将下载的jar包添加到项目的依赖中。然后,可以使用以下代码实现中文分词:
import com.github.fxsjy.jieba.Jieba; import com.github.fxsjy.jieba.Token; public class JiebaDemo { public static void main(String[] args) { String text = "我爱自然语言处理技术"; String[] words = Jieba.cut(text); for (String word : words) { System.out.println(word); } } }
以上就是使用IK Analyzer和jieba分词库实现中文分词的简单示例。可以根据项目需求选择合适的分词库。