强调所有关键字的一个字符串

问题描述:

我创建了一个代码如下:强调所有关键字的一个字符串

$replace = preg_replace("/($A)/","<b>$A</b>",$search); 
$output .= '<div>'.$replace.'</div>';       
print("$output") 
  1. $ A =关键字在我的数据库
  2. $搜索匹配的条目=词组输入的搜索

我现在得到的结果是突出显示匹配关键字的短语与div框独立显示。下面是一个例子(假设 “ABCDE” 是我搜索短语, “AB” 和 “E” 是匹配的关键字):

  1. AB CDE。
  2. ABCD E

是否可以突出显示一个div框中的字符串中的所有匹配关键字?就像这样:

  1. AB CD ê
+0

关键字是一个数组或简单字符,或者有些话昏迷分开吗? – 2015-06-20 18:27:23

如果你想为几个元素的替代品,使用preg_replace_callback

function makeBold($match) { 
    return "<b>" . $match[0] . "</b>"; 
} 

$pattern = "/[ABE]/"; 
$str = "ABCDE"; 
$output = preg_replace_callback($pattern, "makeBold", $str); 
echo $output;