0

我需要使用 utf8 突出显示文本中的单词,例如:

  1. 文本:现在我们知道你是谁,Činšot 我知道我是谁。我没有错!

    词:Čin

    结果:既然我们知道你是谁,* Čin *šot 我知道我是谁。我没有错!

  2. 文本:现在我们知道你是谁,Č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);
}
4

0 回答 0