2
以下は私のコードです。完全な単語と部分的な単語を強調したいと思います。下のコードはフルの単語を強調表示しますが、の部分はという単語を強調表示していません。例えばどのようにして、PHPでフルワードと部分ワードを強調表示できますか?
:
$text = "this is a very famouse poem written by liegh hunt the post want to impress upon the importance";
と
$words ="very written hu want impor";
私は以下のような出力をしたい: -
「これはliegh でを書か非常に famouseの詩ですhu投稿がになります。impor tance;私はそれのために作成した
機能: -
function highlight($text, $words) {
preg_match_all('~\w+~', $words, $m);
if(!$m)
return $text;
$re = '~\\b(' . implode('|', $m[0]) . ')\\b~i';
return preg_replace($re, '<b style="color:white;background-color:red;border-radius:2px;">$0</b>', $text);
}
削除 '\ B'あなたが単語全体と一致しない場合。 $ words文字列に部分語と完全語の両方が含まれている場合は、https://ideone.com/cMXG0M –
を参照してください。部分語と完全語の両方の強調表示を強調したいと思います。 – alex
それで、言葉の境界は何ですか? –