你 可以 ,如果你准备搜索字符串使用正则表达式。在PHP中,例如有一个函数preg_quote,它用转义的版本替换字符串中的所有正则表达式字符。
这是javascript(source)的一个函数:
function preg_quote (str, delimiter) { // discuss at: https://locutus.io/php/preg_quote/ // original by: booeyOH // improved by: Ates Goral (https://magnetiq.com) // improved by: Kevin van Zonneveld (https://kvz.io) // improved by: Brett Zamir (https://brett-zamir.me) // bugfixed by: onno Marsman (https://twitter.com/onnomarsman) // example 1: preg_quote("") // returns 1: '$40' // example 2: preg_quote("*RRRING* Hello?") // returns 2: '\*RRRING\* Hello\?' // example 3: preg_quote("\.+*?[^]$(){}=!<>|:") // returns 3: '\\.\+\*\?\[\^\]$\(\)\{\}\=\!\<\>\|\:' return (str + '') .replace(new RegExp('[.\+*?\[\^\]$(){}=!<>|:\' + (delimiter || '') + '-]', 'g'), '$&')}
因此,您可以执行以下 *** 作:
function highlight(str, search) { return str.replace(new RegExp("(" + preg_quote(search) + ")", 'gi'), "<b></b>");}
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)