Paoding分词-扩展词典

在使用庖丁自定义词典的时候,按照网上查的资料,

1.首先自定义一个XXX.dic的文件,以utf-8保存;

2.将自定义词添加到dic\locale下的XXX.dic中;

3.删除.compile文件夹

  • 首先配置paoding.dic.home.config-fisrt。其有2个选项:system-env和this。
    • paoding.dic.home.config-fisrt=system-env 表示使用系统变量。如果使用这个,那个需要配置环境变量 PAODING_DIC_HOME 为字典所在目录。
    • paoding.dic.home.config-fisrt=this 表示使用本配置文件里面的配置。如果使用这个,需要在本配置文件中继续配置 paoding.dic.home。
  • 配置paoding.dic.home (如果在上面选择了paoding.dic.home.config-fisrt=this才需要),也有2种方法:使用相对路径和绝对路径
    • paoding.dic.home=classpath:dic 使用相对路径。表示使用本项目的classpath中列出的任意一个文件夹,然后把dic文件夹放置其中。一般在eclipse项目中,把dic文件夹放在源码文件夹(src)中。
    • paoding.dic.home=D:/somepath/dic 使用绝对路径。


classpath下修改的paoding-dic-home.properties文件
paoding.dic.home.config-fisrt=this
paoding.dic.home=classpath:dic

庖丁有两种分词模式:

most-words:最大词量分词方式,此模式对应的词典编译类为MostWordsModeDictionariesCompiler

max-word-length:按词在词典中的原序来进行编译,基本不再做其他处理,此模式对应的词典编译类为SortingDictionariesCompiler

most-words是默认的分词模式。

注意:出现自定义词不起效果

修改classpath下配置paoding-analyzer.properties,内容如下(需要根据分词模式来选择哪种compiler):

#PaodingAnlyzer Mode, "most-words", "max-word-length", "class:com.xxx.MyTokenCollectorImpl"...

#paoding.analyzer.mode=most-words

#paoding.analyzer.dictionaries.compiler=net.paoding.analysis.analyzer.impl.MostWordsModeDictionariesCompiler

#paoding.analyzer.mode=max-word-length

paoding.analyzer.dictionaries.compiler=net.paoding.analysis.analyzer.impl.SortingDictionariesCompiler

最后 删掉.compile文件

public class tt {
	public static void main(String[] args) throws IOException {
//		String indexStr = "我是林俊杰,我喜爱编程,我的测试用例";
		String indexStr = "我是运动员,碳专项项目开发进行中...";
		@SuppressWarnings("resource")
		Analyzer analyzer = new PaodingAnalyzer();
		StringReader reader=new StringReader(indexStr);
		TokenStream token = analyzer.tokenStream(indexStr, reader);
		boolean hasnext= token.incrementToken();  
		while (hasnext){
			CharTermAttribute ta = token.getAttribute(CharTermAttribute.class);  
            System.out.println(ta.toString());
            hasnext = token.incrementToken();  
		}
	}
}


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值