中文文本分词,关键词提取工具jcseg使用方法
2016-11-05 00:00
633 查看
jcseg可以从文章或者语句中提取出关键词.并且能把中文数字自动转换成阿拉伯数字
效果如下:
目录结构:
实现:
注意:此处的jcsegTaskConfig 和 ADictionary主要用来加载词库和其它配置文件,是线程安全的,正式环境中如果有高并发量的调用此方法时应该提取到静态代码块中.否则会出现内存溢出异常.
效果如下:
目录结构:
实现:
注意:此处的jcsegTaskConfig 和 ADictionary主要用来加载词库和其它配置文件,是线程安全的,正式环境中如果有高并发量的调用此方法时应该提取到静态代码块中.否则会出现内存溢出异常.
package test; import java.io.BufferedReader; import java.io.File; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.IOException; import java.io.InputStreamReader; import java.io.StringReader; import org.lionsoul.jcseg.ASegment; import org.lionsoul.jcseg.core.ADictionary; import org.lionsoul.jcseg.core.DictionaryFactory; import org.lionsoul.jcseg.core.IWord; import org.lionsoul.jcseg.core.JcsegException; import org.lionsoul.jcseg.core.JcsegTaskConfig; import org.lionsoul.jcseg.core.SegmentFactory; public class TestFenci { public static void main(String[] args) throws IOException, JcsegException { // 创建JcsegTaskConfig分词任务实例 // 即从jcseg.properties配置文件中初始化的配置 //在1.8.3版之后已经在jcseg-core-1.9.2.jar包中放入了默认的配置文件,此处的properties路径可以为空 //如果需要自己配置,也可以在写好配置文件后替换jar包中的配置文件 JcsegTaskConfig config = new JcsegTaskConfig("config/jcseg.properties"); // config.setAppendCJKPinyin(true); // 创建默认词库(即: com.webssky.jcseg.Dictionary对象) // 并且依据给定的JcsegTaskConfig配置实例自主完成词库的加载 ADictionary dic = DictionaryFactory.createDefaultDictionary(config, true); dic.loadFromLexiconFile("D:/fenci/jcseg-1.9.2/lexicon/lex-main.lex");// 这个路径是jcseg-1.9.4-src-jar-dict.zip // 这个jar // 包的 // 存放路径, // 你自己找lexicon // 文件夹下的 // lex-main.lex // JcsegTaskConfig.COMPLEX_MODE表示创建ComplexSeg复杂ISegment分词对象 // JcsegTaskConfig.SIMPLE_MODE表示创建SimpleSeg简易Isegmengt分词对象. ASegment seg = (ASegment) SegmentFactory.createJcseg( JcsegTaskConfig.SIMPLE_MODE, new Object[] { config, dic }); // 设置要分词的内容 String str = "出租车一百元"; seg.reset(new StringReader(str)); // 获取分词结果 IWord word = null; while ((word = seg.next()) != null) { TestFenci fenci = new TestFenci(); String o = word.getValue(); System.out.print(o + "|"); // boolean b = fenci.tes(o); // if (b) { // System.out.println("餐饮类"); // return; // } } } public boolean tes(String i) throws FileNotFoundException { BufferedReader reader = null; String tempString = null; try { reader = new BufferedReader(new InputStreamReader(new FileInputStream(new File("D:/tt/5.txt")), "utf-8")); // 一次读一行,读入null时文件结束 while ((tempString = reader.readLine()) != null) { if(tempString.contains(i)){ return true; } } reader.close(); } catch (IOException e) { e.printStackTrace(); } finally { if (reader != null) { try { reader.close(); } catch (IOException e1) { } } } return false; } }
相关文章推荐
- Python 中文分词工具 ——结巴分词的使用方法总结
- Python结巴中文分词工具使用过程中遇到的问题及解决方法
- NLP自然语言处理 jieba中文分词,关键词提取,词性标注,并行分词,起止位置,文本挖掘,NLP WordEmbedding的概念和实现
- SnowNLP:•中文分词•词性标准•提取文本摘要,•提取文本关键词,•转换成拼音•繁体转简体的 处理中文文本的Python3 类库
- Thinkphp3.2使用scws中文分词 提取关键词
- 中文文本提取关键词、关键词组、关键句(textrank4zh使用)--python学习
- Python 中文分词工具 ——结巴分词的使用方法总结
- 一种中文文本的快速分词方法(三)
- “中文分词 关键词提取”的资料收集
- 文本编辑工具vim的使用方法练习
- 使用Discuz关键词服务器实现PHP中文分词
- 使用Discuz关键词服务器实现PHP中文分词
- 分词工具关键词提取对比
- VS源文件提取工具vsjuicer 下载及使用方法
- 使用Python编写提取日志中的中文的脚本的方法
- 文本编辑工具vim的使用方法
- Python处理中文文本字符时提取某个汉字或字符的方法
- Tika文本提取工具的使用(word、pdf、excel等)
- 使用Jsoup.jar写的工具类(java提取Html中的文本)
- PHP中文分词工具ICTCLAS的使用介绍