`
linliangyi2007
  • 浏览: 1014468 次
  • 性别: Icon_minigender_1
  • 来自: 福州
社区版块
存档分类
最新评论

应网友需求发布IKAnalyzer3.1.2GA

阅读更多
应网友要求,修订3.1.1对字母窜的切分策略,强化对英文单词的切分。
如:
window2000 将切分为  |    window2000  |    window    |   2000;
readme.txt  将切分为 |    readme.txt  |    readme    | txt;
linliangyi2005@gmail.com 将切分为 |   linliangyi2005@gmail.com   |   linliangyi   | 2005   |   gmail   | com ;


下载 :IKAnalyzer3.1.2稳定版完整包.rar

更多详细请参看《IKAnalyzer中文分词器V3.1.1使用手册.pdf》

或访问本人Blog:http://linliangyi2007.iteye.com/blog/429960

项目地址:http://code.google.com/p/ik-analyzer/


分享到:
评论
12 楼 linliangyi2007 2009-10-14  
joachimz 写道
@linliangyi2007 不好意思,我都觉得自己有点讨厌

不过自从开始使用ruby,学习scala这样的语言后,对代码简洁的追求几乎称得上痴迷。有机会就会重构,删代码。


这个是好事,不是坏事啊。

代码罗嗦是偶滴习惯性缺点,不应该提倡的,呵呵。
11 楼 joachimz 2009-10-14  
@linliangyi2007 不好意思,我都觉得自己有点讨厌

不过自从开始使用ruby,学习scala这样的语言后,对代码简洁的追求几乎称得上痴迷。有机会就会重构,删代码。
10 楼 linliangyi2007 2009-10-14  
joachimz 写道
尽管在工作中主要使用java,也接受java的繁琐,但对类似
if (true) {
  return true;
}
else {
  return false;
}

的写法非常反感。不能因为java的繁琐,我们就不去追求代码的简洁。potian的建议还是很中肯的。


好吧,我承认繁琐。但有时候,真的是代码习惯问题啊,改过来怪怪的,请各位容忍一下下啦
9 楼 joachimz 2009-10-14  
尽管在工作中主要使用java,也接受java的繁琐,但对类似
if (true) {
  return true;
}
else {
  return false;
}

的写法非常反感。不能因为java的繁琐,我们就不去追求代码的简洁。potian的建议还是很中肯的。
8 楼 gtman 2009-10-14  
强烈建议发布基于1。5版的。。。
7 楼 potian 2009-09-14  
因为最近想了解分词,所以找了Javaeye推荐的IK。我发帖的主要原因就是有一些不理解的地方,从一开始就没有想要说你的代码什么不好,只不过有点疑问,当然有可能是引起了你的误会

咱们到此打住吧



6 楼 linliangyi2007 2009-09-14  
potian 写道
linliangyi2007 写道
potian 写道
刚刚打开你的程序看了一下,看到一个类:

	/**
	 * 判断词元是否彼此包含
	 * @param other
	 * @return boolean true 完全包含 , false 可能不相交 或者 相交但不包含
	 */
	public boolean isOverlap(Lexeme other){
		if(other != null){
			if(this.begin <= other.begin && this.getEndPosition() >= other.getEndPosition()){
				return true;
			}else if(this.begin >= other.begin && this.getEndPosition() <= other.getEndPosition()){
				return true;
			}else {
				return false;
			}
		}
		return false;
	}      


这个地方为什么判断begin,然后是 getEndPosition之间的关系,是不是应该同样判断getBeginPosition? 还有写得代码太复杂了,两个条件变成一个或不就可以了吗?

另外hashcode和equal都没有判断文本的内容,这个也挺奇怪的

当然我还没看其他的代码,可能你的本意就需要这样?



我想说的是,不要把这段代码等同于两个Lexeme对象的相等判断。代码没有错,也没有多余。

不判断文本内容是考虑到效率问题,对于明确的一段文字,相同位置上的字符是一样的

当然如果将begin改为getBeginPosition会更利于程序的阅读,这个会进行修改。



难道不能这么写


if(other == null) return false;
return  (this.begin <= other.begin && this.getEndPosition() >= other.getEndPosition()) ||
        (this.begin >= other.begin && this.getEndPosition() <= other.getEndPosition())
;





呵呵,这个纯属代码风格问题。如果这个要讨论下去,又会引起争论了。事实上,对于分词器而言,两段代码没有本质区别,不是吗?既不影响效率,也不影响算法。

如果需要讨论代码编写的话,建议学习ruby吧,哪里有比java好的多的魔法代码哦,这跟本贴的中心就相去甚远了,还是就此打住吧。
5 楼 potian 2009-09-13  
linliangyi2007 写道
potian 写道
刚刚打开你的程序看了一下,看到一个类:

	/**
	 * 判断词元是否彼此包含
	 * @param other
	 * @return boolean true 完全包含 , false 可能不相交 或者 相交但不包含
	 */
	public boolean isOverlap(Lexeme other){
		if(other != null){
			if(this.begin <= other.begin && this.getEndPosition() >= other.getEndPosition()){
				return true;
			}else if(this.begin >= other.begin && this.getEndPosition() <= other.getEndPosition()){
				return true;
			}else {
				return false;
			}
		}
		return false;
	}      


这个地方为什么判断begin,然后是 getEndPosition之间的关系,是不是应该同样判断getBeginPosition? 还有写得代码太复杂了,两个条件变成一个或不就可以了吗?

另外hashcode和equal都没有判断文本的内容,这个也挺奇怪的

当然我还没看其他的代码,可能你的本意就需要这样?



我想说的是,不要把这段代码等同于两个Lexeme对象的相等判断。代码没有错,也没有多余。

不判断文本内容是考虑到效率问题,对于明确的一段文字,相同位置上的字符是一样的

当然如果将begin改为getBeginPosition会更利于程序的阅读,这个会进行修改。



难道不能这么写


if(other == null) return false;
return  (this.begin <= other.begin && this.getEndPosition() >= other.getEndPosition()) ||
        (this.begin >= other.begin && this.getEndPosition() <= other.getEndPosition())
;



4 楼 linliangyi2007 2009-09-13  
potian 写道
刚刚打开你的程序看了一下,看到一个类:

	/**
	 * 判断词元是否彼此包含
	 * @param other
	 * @return boolean true 完全包含 , false 可能不相交 或者 相交但不包含
	 */
	public boolean isOverlap(Lexeme other){
		if(other != null){
			if(this.begin <= other.begin && this.getEndPosition() >= other.getEndPosition()){
				return true;
			}else if(this.begin >= other.begin && this.getEndPosition() <= other.getEndPosition()){
				return true;
			}else {
				return false;
			}
		}
		return false;
	}      


这个地方为什么判断begin,然后是 getEndPosition之间的关系,是不是应该同样判断getBeginPosition? 还有写得代码太复杂了,两个条件变成一个或不就可以了吗?

另外hashcode和equal都没有判断文本的内容,这个也挺奇怪的

当然我还没看其他的代码,可能你的本意就需要这样?



我想说的是,不要把这段代码等同于两个Lexeme对象的相等判断。代码没有错,也没有多余。

不判断文本内容是考虑到效率问题,对于明确的一段文字,相同位置上的字符是一样的

当然如果将begin改为getBeginPosition会更利于程序的阅读,这个会进行修改。
3 楼 infante_yin 2009-09-13  
你好,可以问你个问题吗?看你写了关于很多CAS的,我出了个这样的问题,可以给我点帮助吗?java.security.cert.CertificateException: No subject alternative names present
2 楼 potian 2009-09-13  
刚刚打开你的程序看了一下,看到一个类:

	/**
	 * 判断词元是否彼此包含
	 * @param other
	 * @return boolean true 完全包含 , false 可能不相交 或者 相交但不包含
	 */
	public boolean isOverlap(Lexeme other){
		if(other != null){
			if(this.begin <= other.begin && this.getEndPosition() >= other.getEndPosition()){
				return true;
			}else if(this.begin >= other.begin && this.getEndPosition() <= other.getEndPosition()){
				return true;
			}else {
				return false;
			}
		}
		return false;
	}      


这个地方为什么判断begin,然后是 getEndPosition之间的关系,是不是应该同样判断getBeginPosition? 还有写得代码太复杂了,两个条件变成一个或不就可以了吗?

另外hashcode和equal都没有判断文本的内容,这个也挺奇怪的

当然我还没看其他的代码,可能你的本意就需要这样?





1 楼 IceWee 2009-09-11  
支持一个。

相关推荐

    IKAnalyzer3.1.2GA_AllInOne

    IKAnalyzer是一个开源的,基于java语言开发的轻量级的中文分词工具包。从2006年12月推出1.0版开始,IKAnalyzer已经推出了3个大版本。最初,它是以开源项目Luence为应用主体的,结合词典分词和文法分析算法的中文分词...

    IKAnalyzer3.1.6GA.jar下载

    IKAnalyzer3.1.6GA.jar IKAnalyzer3.1.6GA.jar

    IKAnalyzer3.1.6GA完整包

    IK Analyzer 是一个开源的,基于java 语言开发的轻量级的中文分词工具包。从2006 年12 月推出1.0 版开始, IKAnalyzer 已经推出了3 个大版本。最初,它是以开源项目 Luence 为应用主体的,结合词典分词和文法分析...

    IKAnalyzer3.2.5Stable.jar

    IKAnalyzer的设计理念是易于扩展和配置,可以根据实际需求定制词典,支持热更新,使得在运行时可以动态添加或修改词典内容。它的核心特点是支持多种分词模式,包括精确模式、全模式、快速模式以及智能模糊模式,能...

    IKAnalyzer2012完整分发包

    IK Analyzer安装包包含: 1. 《IKAnalyzer中文分词器V2012使用手册》(即本文档) 2. IKAnalyzer2012.jar(主jar包) 3. IKAnalyzer.cfg.xml(分词器扩展配置文件) 4. stopword.dic(停止词典) 5. LICENSE....

    IKAnalyzer6.5.0.jar

    IK Analyzer的名字来源于“Intelligent Keyword”(智能关键词),它的设计理念是通过灵活的配置来满足不同场景下的分词需求。 IK Analyzer的6.5.0版本是其发展过程中的一个重要里程碑,它在前一版本的基础上进行了...

    IKAnalyzer2012_u6

    1. **词典管理**:IKAnalyzer的性能很大程度上取决于词典的质量,因此定期更新词典或根据需求自定义词典是必要的。 2. **分词模式**:IKAnalyzer提供了两种分词模式——“精确模式”和“全模式”,前者尽可能保证...

    IKAnalyzer3[1].2.稳定版本jar包,API,使用说明

    IKAnalyzer3.1.2 是该分词器的一个稳定版本,提供了良好的性能和可靠性。 在Java开发中,分词器扮演着关键角色,它能够将连续的汉字序列分解成有意义的词语,这对于理解和处理中文文本至关重要。IKAnalyzer 使用了...

    IKAnalyzer 支持高版本最新Lucene 5.x、6.x、7.x

    - 使用IKAnalyzer配合Solr,可以构建企业级的搜索应用,满足大规模数据的高效检索需求。 5. **安装和使用IKAnalyzer**: - 将IKAnalyzer的jar包添加到项目的类路径中,然后在配置文件中指定使用IKAnalyzer作为...

    IKAnalyzer配置文件、扩展词典和停用词词典.zip

    IKAnalyzer是一款广泛应用于Java环境中的中文分词器,它的全称是"Intelligent Chinese Analyzer for Java"。这个压缩包文件包含的是IKAnalyzer的配置文件、扩展词典和停用词词典,这些组件对于优化IKAnalyzer的性能...

    IKAnalyzer2012FF_hf1.zip

    标题中的"IKAnalyzer2012FF_hf1.zip"指的是IK Analyzer的2012年最终版(Final)的高频率更新1(Hot Fix 1)。IK Analyzer是一款开源的、基于Java语言开发的轻量级中文分词器,主要用于Java环境下对中文文本的分词...

    ikanalyzer-solr8.4.0_solr8_solr_ikanalyzer_中文分词_

    ikanalyzer 提供了丰富的扩展性,用户可以根据自己的需求定制词典,支持自定义停用词、同义词等,以满足不同场景的分词需求。同时,ikanalyzer 还提供了全模式和最细粒度模式两种分词策略,全模式尽可能切出更多的词...

    IKAnalyzer-5.0.jar及solr-analyzer-extra-5.3.jar

    在实际应用中,用户可能需要配置Solr的schema.xml文件,指定使用IKAnalyzer作为默认的字段分析器,同时根据需求选择合适的分词策略。同时,通过solr-analyzer-extra-5.3.jar,用户还可以集成更多的文本处理功能,如...

    IK Analyzer 2012FF_hf1.7z

    "2012FF_hf1.7z" 是IK Analyzer的一个特定版本,可能包含了优化和改进,适应了2012年及之后的技术需求。 在Solr中,分词器扮演着至关重要的角色。它们负责将输入的中文文本分解成一系列的词汇单元,这些单元通常被...

    Ikanalyzer分词器动态自定义词库的方法.doc

    IKAnalyzer提供了动态自定义词库的方法,使得开发者可以根据不同的应用场景和需求,灵活地配置分词器的词库。 动态自定义词库的方法主要通过自定义Configuration类来实现。Configuration类是IKAnalyzer的核心配置类...

    IK Analyzer 中文分词器下载

    IK Analyzer 2012FF_hf1 版本是该分词器的一个特定版本,"2012FF"可能表示发布于2012年,而"hf1"可能是_hotfix1_的缩写,意味着这是一个修复了一些问题的小版本更新。这个版本可能包含性能优化、错误修复或者增加了...

    Lucene的IK Analyzer 3.0 中文分词器 全解

    - 安装过程简单,只需将IKAnalyzer3.0GA.jar添加到项目的lib目录,配置文件IKAnalyzer.cfg.xml则应放在代码根目录或WEB-INF/classes目录下。 - 对于Lucene用户,可以快速入门通过Java代码示例进行索引和查询操作,...

    IKAnalyzer2012FF_u1.jar下载

    IK Analyzer就是为此目的设计的,它采用了基于词典的分词方法,同时结合了动态词典和智能词组策略,能够适应不同场景下的分词需求。 IK Analyzer的核心特性包括: 1. **灵活的词典管理**:IK提供了丰富的词典管理...

    IKAnalyzer2012_u6中文分词器以及手册正式版.zip

    IKAnalyzer2012_u6中文分词器以及手册正式版 Mode LastWriteTime Length Name ---- ------------- ------ ---- d----- 2017/10/29 1:41 doc -a---- 2017/10/29 1:41 414 IKAnalyzer.cfg.xml -a---- 2017/10/29 1...

    IKAnalyzer2012_u6中文分词器jar包

    IKAnalyzer2012_u6中文分词器jar包 IKAnalyzer2012_u6中文分词器jar包 IKAnalyzer2012_u6中文分词器jar包 IKAnalyzer2012_u6中文分词器jar包 IKAnalyzer2012_u6中文分词器jar包

Global site tag (gtag.js) - Google Analytics