我有一个突出显示短语的代码。当短语只是没有变量符号($)的单词,数字和符号(如(',*,$,))时,它可以工作。以下是我的代码。那么我该怎么做才能突出这个确切的短语呢?
if (!empty($_GET['gid'])) {
function highlightWords($string, $words)
{
$string = str_ireplace($words, '<span class="highlight_word">'.$words.'</span>', $string);
/*** return the highlighted string ***/
return $string;
}
/*** example usage ***/
$string = file_get_contents('referencefiles/Microsoft.txt', FILE_USE_INCLUDE_PATH);
$words = 'Paper August 2003';
/*** highlight the words ***/
$string = highlightWords($string, $words);
echo $string;
}
?>
答案 0 :(得分:1)
模式字符串中的任何元字符都需要进行转义。 请检查http://www.php.net/manual/en/ref.regex.php
答案 1 :(得分:0)
这会有所帮助:
function highlight_matches($find_text, $text) { return preg_replace("/($find_text)/i", '$1', $text); } echo highlight_matches($string, $words);