paoding的分词使用

4 篇文章 0 订阅

paoding下载

 

http://code.google.com/p/paoding/

 

 

 

paoding分词的默认配置

paoding-analysis-default.properties

配置全局的规则,{字典目录,切词规则}

 

paoding分词的字典指定

paoding-dic-home.properties

paoding自己的字典文件paoding/dic

x-noise-*.dic是过滤字典,存放分词时过滤词和字;其他dic是定义一个完整的词。

 

paoding分词的切词策略

paoding-knives.properties

 

 

paoding/dic/.compiled目录是生成二进制字典的目录,每次字典,过滤字典添加新词的时候,需要删除,运行paoding分词的时候会重新生成新的字典。

 

net.paoding.analysis.dictionary包目录维护字典的类

net.paoding.analysis.knife包目录定义了一些分词策略

 

 

net.paoding.analysis.knife.FileDictionaries

程序分词时,主要加载的字典

 

 

/**
 * 中文字典缓存根据地,为{@link CJKKnife}所用。<br>
 * 从本对象可以获取中文需要的相关字典。包括词汇表、姓氏表、计量单位表、忽略的词或单字等。
 * <p>
 * 
 * @author Zhiliang Wang [qieqie.wang@gmail.com]
 * 
 * @see CJKKnife
 * 
 * @since 1.0
 */
public class FileDictionaries implements Dictionaries {

	// -------------------------------------------------

	protected Log log = LogFactory.getLog(this.getClass());

	// -------------------------------------------------

	/**
	 * 词汇表字典
	 */
	protected Dictionary vocabularyDictionary;

	/**
	 * lantin+cjk的词典
	 */
	protected Dictionary combinatoricsDictionary;

	/**
	 * 姓氏字典
	 * 
	 */
	protected Dictionary confucianFamilyNamesDictionary;

	/**
	 * 忽略的单字
	 */
	protected Dictionary noiseCharactorsDictionary;

	/**
	 * 忽略的词语
	 * 
	 */
	protected Dictionary noiseWordsDictionary;

	/**
	 * 计量单位
	 */
	protected Dictionary unitsDictionary;
 

 

 

 

 

 

 

//分词
private String[] wordSegmentation(String text) {

                //应该用一个全局变量,可以复用

                Analyzer analyzer = new PaodingAnalyzer();

		List<String> tags = new ArrayList<String>();
                  
		TokenStream tokenStream = analyzer.tokenStream("text",
				new StringReader(text));
		CharTermAttribute termAtt = (CharTermAttribute) tokenStream
				.getAttribute(CharTermAttribute.class);
		try {
			while (tokenStream.incrementToken()) {
				tags.add(termAtt.toString());
			}
		} catch (IOException e) {
			e.printStackTrace();
		}
		String[] asdfasdf = new String[tags.size()];
		tags.toArray(asdfasdf);
		return asdfasdf;
	}
 

 

 

 

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值