php 搜索结果的关键字替换为高亮显示的解决办法
内容摘要
这篇文章主要为大家详细介绍了php 搜索结果的关键字替换为高亮显示的简单示例,具有一定的参考价值,可以用来参考一下。
对php替换搜索结果中的关键字为高亮显示对此感兴趣的
对php替换搜索结果中的关键字为高亮显示对此感兴趣的
文章正文
这篇文章主要为大家详细介绍了php 搜索结果的关键字替换为高亮显示的简单示例,具有一定的参考价值,可以用来参考一下。
对php替换搜索结果中的关键字为高亮显示对此感兴趣的朋友,看看idc笔记做的技术笔记!
/**
* 搜索结果的关键字替换为高亮显示
*
* @param
* @arrange (www.idcnote.com)
**/
function highLight($str, $keywords, $color = "red") {
if (empty($keywords)) {
return $str;
}
$keywords = split("[ \t\r\n,]+", $keywords);
foreach($keywords as $val) {
$tvar = eregi($val, $str, $regs);
$finalrep = "<font color=". $color . ">" . $regs[0] . "</font>";
}
$str = str_ireplace($regs[0], $finalrep, $str);
return $str;
}
/**
* 搜索结果的关键字替换为高亮显示
*
* @param
* @arrange (www.idcnote.com)
**/
//正则表达式
eregi_replace("($keyword)","<font color=red>".\\1."</font>",$str);
preg_replace("'($keyword)'i","<font color=red>".\\1."</font>",$str);
//字符串处理
str_ireplace($keyword,"<font color=red>".$keyword."</font>",$str);
<script>
function highLight(str,key,color){
keyE=key.replace(/\\/g,"\\\\").replace(/\//g,"\\/").replace(/\"/g,"\\\"").replace(/\'/g,"\\\'").replace(/\r/g,"\\r").replace(/\n/g,"\\n");
return(str.replace(eval("\/(>.*)"+keyE+"(.*<)\/gi"),"$1"+key.fontcolor(color)+"$2"));
}
strS="<li><a href=\"/news/20041025114305.htm\">华北院召开2004年三季度工作总结会议</a></li>";
document.write(highLight(strS,"2004","red"));
</script>
注:关于php 搜索结果的关键字替换为高亮显示的简单示例的内容就先介绍到这里,更多相关文章的可以留意
代码注释