+ -
当前位置:首页 → 问答吧 → 用正则表达式高亮指定字符串

用正则表达式高亮指定字符串

时间:2009-11-29

来源:互联网

<? function highlight_words($str, $words, $color = '#FFFF00') { if(is_array($words)) { foreach($words as $k => $word) { $pattern[$k] = "/\b($word)\b/is"; $replace[$k] = '<font style="background-color:'.$color.';">\\1</font>'; } } else { $pattern = "/\b($words)\b/is"; $replace = '<font style="background-color:'.$color.';">\\1</font>'; } return preg_replace($pattern,$replace,$str); } $str="sdfasdfasdfas AS asds"; $word="as"; echo highlight_words($str,$word); ?> 

作者: darkst   发布时间: 2009-11-29

谢谢.....

作者: whl1295a   发布时间: 2009-11-30

不错,顶一下。

作者: mailangel123   发布时间: 2009-12-05

本帖最后由 loki 于 2009-12-8 13:40 编辑

如果
content字段中有html代码
其中<a src ="*" title="我也被高亮了- -">高亮</a>
用这个字符串,匹配“高亮”看看
你的内容就乱了

作者: loki   发布时间: 2009-12-08