首页 > 编程知识 正文

模糊搜索算法,状态空间的一般搜索过程

时间:2023-05-04 16:31:44 阅读:169285 作者:2404

模糊搜索是社交平台、电商平台、搜索引擎等平台的常见功能。

写这篇文章之前有两个问题:

问题一:把“北京大学”输入学校库,怎样才能搜索到“北京大学”?

问题2 :把“北京大学”输入学校库,怎样才能搜索到“北京大学”“北京交通大学”“北京理工大学”“北京工业大学”“北京航空航天大学”等?

这两个问题的关键词都是“北京大学”,之间有空间,但这样的搜索问题可以用数据库语言实现,也可以由服务器端处理。

使用SqlServer :问题1 :

selectschool _ name fromt _ schoolwhereschool _ name=replace (school _ name,','''); 问题2 :

select * fromt _ schoolwhereschool _ name like '北京' [^ ] '大学' select * fromt _ schoolwhereschool _ name like '北京%大学'由jj

String str='北京大学';

(1)删除包括首尾、中间在内的所有空格

String str=str.replaceAll (',' ); system.out.println(str: ) str; 注: str.trim ()只能删除前导空格和尾随空格

(2)利用正则,一致置换包括首尾、中间在内的所有空格

String str=str.replaceAll (',' ); system.out.println(str: ) str; )3)利用正则表达式,匹配包含首尾、中间的所有空白字符(不限于空格) (可以与空格、制表符、分页符等空白字符中的任意一个匹配) ) ) ) ) )。

stringstr=str.replaceall('s* ',' ); system.out.println(str: ) str; 问题2 :

String str='北京大学'; string[]a=str.split('s ' ); String[] aa=new String[]{ '北京交通大学','北京理工大学','北京工业大学','北京航空航天大学','上海北京大学' }; (1)使用正则

pattern regex=pattern.com pile (' ^ ' a [0] '.* ' a [1] ' $ ' ); for(intI=0; iaa.length; I ) system.out.println (regex.matcher ) aa[I].find ); (2)字符串的携带方法

for(intI=0; iaa.length; I () if ) aa[I].startswith ) a[0] ) aa[I].endswith ) a[1] ) system.out.println ) aa[I]; }原文作者技术博客: https://www.Jian Shu.com/u/a C4 daaeecdfe

95后前端妹妹一张,爱阅读,爱交友,把工作中遇到的问题记录在这里,希望能给看到的所有你带来哪怕一点帮助。

欢迎留言交流。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。