`
gcgmh
  • 浏览: 355060 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

索引KeyWord处理

 
阅读更多
	/*
	  * 处理关键字上特殊字符的方法
	  */
	private String convertKeyWord(String keyWord) {
		//去掉除字母,数字,下划线,汉字,空格以外的所有特殊字符,及关键字前后的空格
		keyWord = keyWord.trim().replaceAll("[^A-Za-z0-9_\\s\\u4e00-\\u9fa5]" , "");
		if (keyWord.indexOf(" ") != -1) {
			//去掉两个关键字之间多余的空格,只留一个空格
			String[]keyWords = keyWord.split(" ");
			String kwStr = "";
			for (int i = 0; i < keyWords.length; i++) {
				if (!"".equals(keyWords[i])) {
					kwStr += keyWords[i] + " "; 
				}
			}
			keyWord = kwStr.trim();
			//判断关键字长度,超过30个字符就截取掉多余的
			int max = Math.min(30, kwStr.length());
			keyWord = keyWord.substring(0,max-1);
			return keyWord;
		}else{
			int max = Math.min(30, keyWord.length());
			keyWord = keyWord.substring(0,max);
			return keyWord;
		}
	}
分享到:
评论

相关推荐

    c++实现倒排索引算法

    1. 内存管理:由于倒排索引可能涉及大量数据,需考虑内存限制,可能需要采用外部存储或分块处理。 2. 效率优化:为了提高搜索效率,可以使用哈希表来加速关键词查找,使用STL容器(如`std::unordered_map`)存储倒排...

    elasticsearch索引介绍.pptx

    而**keyword**字段则用于精确匹配,例如ID或分类,它们不分词,整体进行索引。 **倒排索引**是ES实现快速搜索的关键机制。在索引过程中,每个文档的关键词都会被转换为倒排形式,即关键词指向包含它的文档列表。...

    lucene索引查看程序及代码

    其中,“luke”(Lucene Unified KEyword Explorer)就是这样一款工具。 luke是一款开源的Lucene索引查看器,它允许用户以图形化界面的形式查看和操作Lucene索引。lukeall-0.8.1.jar是luke的运行文件,通过运行这个...

    ElasticSearch添加索引.docx

    - `text`类型字段中的`index": "true"`表示该字段需要进行分词处理,便于全文搜索,而`keyword`类型的字段通常用于过滤和排序。 3. **版本差异**: - 6.x和7.x版本的映射文件结构相似,主要区别在于7.x版本中去掉...

    用Lucene.net对数据库建立索引及搜索

    Analyzer负责将输入的文本分词并进行标准化处理,以便于后续的索引和搜索。例如,文中使用了`ChineseAnalyzer`,专门用于处理中文文本,它可以识别并处理中文词汇,确保搜索结果的准确性。 接下来,我们来看一下...

    修改wcp开源代码,Lucene为附件创建索引

    3. **索引构建**:将提取的文本内容作为字段添加到Lucene的Document对象中,并使用Field对象指定其类型(如Keyword或Text),以便于后续的分析和索引过程。 4. **索引更新**:在wcp系统中,当新的附件上传时,需要...

    Lucene5学习之创建索引入门示例

    3. **Field**: 文档中的数据单元,每个字段都有特定的类型(如Text、Keyword或Numeric),决定其如何被索引和搜索。 4. **IndexWriter**: 负责创建和更新索引。我们可以添加、删除或更新Document,并通过...

    hibernateSearch 搜索 索引列子源代码

    - 使用 `@IndexedEmbedded` 处理嵌套实体的索引。 以上就是 Hibernate Search 的基本用法和关键知识点。通过这些源代码示例,你可以更好地理解如何在实际项目中实现全文搜索功能。记得根据项目需求调整配置和索引...

    Lucene 索引、删除、检索 实例

    **Lucene 索引、删除、检索 实例** ...通过运行这个示例,你将更深入地理解Lucene的工作原理,包括如何处理文本、建立索引、删除文档以及执行高效的搜索。这对于使用Lucene进行全文搜索应用的开发至关重要。

    倒排索引1

    1. **分词处理**:Elasticsearch在索引文档时会对文本进行分词,而MySQL通常不进行预处理,除非使用全文索引等特定功能。 2. **数据结构**:Elasticsearch使用倒排索引,而MySQL主要依赖B树或哈希索引,对全字段匹配...

    使用ES+JavaWeb实现关键词索引相关文章内容

    在IT行业中,构建一个高效的全文搜索引擎是至关重要的,特别是在处理大量数据时。本文将深入探讨如何使用Elasticsearch(简称ES)与JavaWeb技术来实现关键词索引,并关联相关文章内容。Elasticsearch是一个分布式、...

    ElactisSearch操作索引.zip

    在处理大规模数据时,Elasticsearch展现了强大的性能和灵活性。本教程将深入探讨如何在Elasticsearch中进行索引的操作。 ### 一、索引的概念 在Elasticsearch中,索引(Index)是存储和检索文档的地方,类似于关系...

    KWIC索引系统需求说明书.pdf

    背景部分可能涉及到KWIC(Keyword in Context)索引方法的历史和发展,它是一种文本处理技术,用于快速定位文档中关键词的上下文环境,提高信息检索效率。KWIC系统在学术研究、图书馆管理和信息检索服务等领域具有...

    REARGUARD Secure Keyword SearchUsing Trusted Hardware论文翻译

    《REARGUARD Secure Keyword Search Using Trusted Hardware》这篇论文探讨了一个关键的安全问题——如何在不泄露用户隐私的情况下,实现对加密数据的关键词搜索。REARGUARD是一种利用可信硬件技术来确保安全搜索的...

    Android ListView的字母索引排序和搜索

    在处理大量具有字母顺序的条目时,字母索引排序和搜索功能显得尤为重要。这不仅提升了用户体验,也让用户能够快速定位到目标信息。本篇文章将深入探讨如何在Android中实现ListView的字母索引排序和搜索功能。 首先...

    washer一个基于whoosh的文件CLI索引器和搜索工具

    2. **基于Whoosh**:利用 `Whoosh` 的高效索引和搜索机制,`washer` 能够处理大量文件,并快速返回搜索结果。 3. **文件索引**:`washer` 可以遍历指定目录及其子目录,将文件内容转化为可搜索的索引,包括文件名、...

    索引构建秘籍:如何定义 Elasticsearch 中的映射?

    ### 索引构建秘籍:如何定义 Elasticsearch 中的映射? #### 一、映射的重要性 在 Elasticsearch 中,映射(Mapping)是定义文档结构和如何被索引的关键组件。映射类似于传统关系型数据库中的表结构。合理且正确地...

    基于Spring的Hibernate Search全文检索功能示例

    10. **异常处理**:在实现过程中,可能会遇到如索引未找到、分析器配置错误等问题,需要正确处理这些异常,确保应用的健壮性。 综上所述,基于Spring的Hibernate Search全文检索功能示例涵盖了从集成、配置、索引...

    keyword_find.zip_pdf txt_python转换为pdf_关键词抽取

    在IT行业中,转换文件格式和数据提取是常见的需求。在这个特定的案例中,我们关注的是一个名为"keyword_find.zip"的...通过学习和理解"keyword_find.py"的实现,我们可以提升自己在文件处理和文本分析方面的技能。

    Preference-based top-k Spatial Keyword Queries

    AIR树是一种新型的索引结构,它结合了位置接近性、偏好相似性和文本相关性,能够有效地帮助用户根据自己的偏好找到最相关的结果。由于查询中的模糊语言标签通常反映了用户的偏好,因此本文提出了一种高效的计算用户...

Global site tag (gtag.js) - Google Analytics