我需要使用 utf8 突出显示文本中的单词,例如:
文本:现在我们知道你是谁,Činšot 我知道我是谁。我没有错!
词:Čin
结果:既然我们知道你是谁,* Čin *šot 我知道我是谁。我没有错!
文本:现在我们知道你是谁,Činšot 我知道我是谁。我没有错!
词:辛
结果:既然我们知道你是谁,* Čin *šot 我知道我是谁。我没有错!
我需要如果单词不包含 utf8 字符,它会突出显示。
我当前的代码:
function highlight($text, $words, $type) {
preg_match_all('~\p{L}+~iu', $words, $m);
if(!$m)
return $text;
$re = '~\\p{L}}(' . implode('|', $m[0]) . ')\\p{L}}~iu';
return preg_replace($re, '<span id="title_highlight">$0</span>', $text);
}