序
正则表达式是字符串处理工具中的一个强大工具。有人觉得只是一个小玩具,但无论如何也分不开。
介绍了JavaScript正则表达式的替换方法和高亮搜索关键词的功能。
首先介绍正则表达式的替换方法
替换介绍
w3school原始链接介绍
如何用特殊字符$来表示正则表达式中的原始文本,是实现搜索高亮的关键。
var str=' asad sad 123 sd qwe21Str.replace(/d /img,' number ');//这里的数字匹配正确,用中文数字console.log(str)代替;//'asad sad数字sd qwe数字'-。Str.replace(/d /img,' number $ 1 number ');console . log(str);//' as ad sad number $ 1 number SD qwe number $ 1 number '/显然它没有成功。1美元还是1美元,那么如何正确使用呢?-var str=' asad sad 123 SD qwe21 ';Str.replace(/(d )/img,' number $ 1 number ');//这里,数字匹配正确,原始字符串用$1表示,替换console.log(str)。///'asad sad数字123数字sd qwe数字21数字'/*()表示有规律地捕获元组。您可以使用$1特殊字符来表示替换的内容。可以有多个()元组,也就是可以有多个$1,$2 */来试手。
!DOCTYPE html html lang=' en ' head/head dy style b { color : red;}/Style div ID='精气神'春江花月夜br作者:张br春江潮,海上明月潮。Br 〉〉〉〉〉〉〉〉〉〉〉〉〉〉〉〉〉1 Br河绕芳甸而流,月光花林似霰;霜在空中飞,而白沙在汀上看不见。Br江天一无细尘,天上孤月。谁第一次在河边看到月亮?江悦拍照之初?Br人生代代不息,江悦只是年年相似。br/div input type=' text ' id=' input '/body/html script//input输入要搜索的字符串input.onchange=function(){ //获取要搜索的字符串var searchVal=input.value//获取待搜索内容var text=poetry.innerHTML//取消突出显示上一次搜索中突出显示的字符串。text=text . replace(/b[]*([]*)/b[]*/ig,' $ 1 ');诗歌. innerHTML=文本;//用括号()初始化正则表达式,形成可捕获的元组。ig表示全局匹配,不区分大小写varreg=newregexp ('('searchval ')',' ig ');//突出显示字符串text=text.replace(reg,' $ 1 ');诗歌. innerHTML=文本;}/脚本摘要
以上就是边肖介绍的JavaScript正则方法replace实现搜索关键词的高亮显示,希望对大家有所帮助。如果你有任何问题,请给我留言,边肖会及时回复你。非常感谢您对我们网站的支持!