正则表达式去除字符串的首尾空格,合并字符串中的多个空格为一个

今天维护一个简单的搜索功能:需求是可以多词高亮搜索,那好吧,无非把输入的字符串拆分成一个数组。然后把搜索到的内容中的这个词高亮。

1、字符串处理
var searchTest=" 你好  妹妹 哎呀   不要啦   ";
//去除开头空格
searchText=searchTest.replace(/^\s*/g,'');
//去除结尾空格
searchText=searchTest.replace(/\s*$/g,'');
//多个空格合并成一个
searchText=searchTest.replace(/\s{2,}/g," ");
//ok 拆分
searchText=searchTest.split(" ");

结果如下:

控制台执行结果

2、高亮方法
var highLight=function(searchTest1,ResultString){
    return eval("ResultString.replace(/"+searchTest1+"/ig,'<span style=background:yellow>$1</span>')")
}
//第一个参数是搜索的字符,第二个是搜索到的结果,然后把
//结果中的字符不区分大小写的全部替换成一个带背景的html语句,
//用了正则表达式中传递参数,得用eval,但是$1(匹配到的第一个字符)
//没有显示出来,忘记这个咋拼的了,基本上就这样。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值