生活服务
java 查找关键字_java实现简单的关键字查找
2024-12-16 15:30  浏览:74

需求:从一个指定的字符串中,查找是否存在指定的关键字,有则将其按顺序找出。例如:从"我在开会,一会打电话,然后去吃饭" 查找是否含有 "教研"、"上课"、"开会"、"打电话"、"吃饭" ,结果是查找到"开会" "打电话" "吃饭"。

分析:可以简单的进行字符串扫描,对每一个关键字进行匹配,开始位置为0,扫描到则下次开始的位置加上字符串的长度。

代码如下

package cc.dc.test;

import java.util.ArrayList;

import java.util.List;

public class Test2 {

//记录找到的关键字

private static List keywordsList = new ArrayList();

public static void main(String[] args) {

//待查找的字符串

String content = "我在开会,一会打电话,然后去吃饭";

//搜索的关键字

String[] subStrings = {"打电话","开会","吃饭"};

getRemindString(content,subStrings);

for(String str:keywordsList){

System.out.print(str+"--");

}

}

private static void getRemindString(String content, String[] subStrings) {

int[] array = new int[content.length()];

for (int i = 0; i < array.length; i++) {

//默认设置为10000,最后判断不是10000的位置就是关键字

array[i] = 10000;

}

for (int j = 0; j < subStrings.length; j++) {

String findStr = subStrings[j];

// 待查找字符串的长度

int findLength = findStr.length();

for (int i = 0; i < content.length();) {

if ((findLength + i) <= content.length()

&& content.substring(i, findLength + i).equals(findStr)) {

// 查找到的位置

//System.out.println("find " + i + "--"+ content.substring(i, findLength + i));

//找到,则设置其在subStrings的位置

array[i] = j;

// 找到则下次查找的位置+字符长度

i += findLength;

} else {

// 没有找到则从下一个位置开始查找

i++;

}

if (i + findLength > content.length()) {

// 如果下一次查找的endIndex>str.length()则说明不可能再有该字符串了

break;

}

}

}

for (int i = 0; i < array.length; i++) {

//所有不是10000的位置都是查找到关键字的位置

if (array[i] != 10000) {

//System.out.println("--" + subStrings[array[i]] + "--");

keywordsList.add(subStrings[array[i]]);

}

}

}

}

结果如下

    以上就是本篇文章【java 查找关键字_java实现简单的关键字查找】的全部内容了,欢迎阅览 ! 文章地址:http://dh99988.xhstdz.com/xwnews/527.html 
     栏目首页      相关文章      动态      同类文章      热门文章      网站地图      返回首页 物流园资讯移动站 http://dh99988.xhstdz.com/mobile/ , 查看更多   
最新文章
16个ChatGPT用例:利用AI提高团队生产力
Lark是飞书面向海外市场运营的品牌名称。Lark Base对应的中文产品名称为飞书多维表格Lark Meegle对应的中文产品名称为飞书项目La
如何做高质量外链 网站的高质量外链优化策略分析
  虽然搜索引擎算法一直在变,但高质量外链一直是网站排名的重要因素之一。SEO人员每天除了更新文章,剩下的主要工作就是到高
下一个前沿:数据科学和人工智能将如何塑造2025年
本文来自千家网。数据科学作为数字时代的核心驱动力,正在不断推动各行各业的深刻变革。从精准的市场预测到个性化医疗,从智慧城
天津网站SEO找行者SEO,提升品牌知名度的利器,天津网站SEO,提升品牌知名度的有效工具
在当前竞争激烈的互联网市场中,企业要想脱颖而出,就必须利用好各种营销手段,搜索引擎优化(Search Engine Optimization,简称
java enterprise和maven项目有什么区别 eclipse project和maven project
前面我们已完成了Maven安装与配置、Jdk安装与配置接下来在Eclipse中实际创建Maven类型Project一、Eclipse中”File“--》”new“
机电一体化论文
  摘要:全球经济不断的发展,科技也在不断的进步,为了减少资源压力,机电一体化技术在工程机械中的应用越来越多,已然成为了
揭秘SEO网络优化平台,企业网站搜索引擎排名提升秘籍
SEO网络优化平台是提升企业网站搜索引擎排名的关键工具。通过深度分析、关键词优化、内容质量提升等策略,该平台助力企业快速提
搜索引擎优化(SEO)优惠,提升网站排名与流量的(黑帽seo)机会
在当今数字化时代,企业和网站所有者越来越意识到搜索引擎优化(SEO)的重要性,SEO 是通过优化网站内容和结构,提高其在搜索引
5个好用的WordPress seo插件!
WordPress经常被用来搭建外贸英文网站,因为他的拓展性能非常强,通过各种插件来拓展各种功能,非常强大,而且WordPress非常适合
MNN推理引擎:轻量级深度学习优化实践
随着手机算力的不断提升,以及深度学习的快速发展,特别是小网络模型不断成熟,原本在云端执行的推理预测就可以转移到端上来做。
相关文章