PHPでpreg_replaceを使用してキーワード検索テキストを強調表示したいのですが、問題は括弧文字列(
と)
私の関数は次のようになります...
$text_oritinal = "25 Hours: Colour In White (CD)";
function highlight($text_search, $text_original) {
$str = preg_replace('#'. $text_search .'#i', '<span style="background-color:#FFFF66; color:#FF0000;">\\0</span>', $text_original);
return $str;
}
完全な元のテキストは"25 Hours: Colour In White (CD)"
例えば。キーワードを使用する場合
$text_search = "25 Hours: Colour In White";
ハイライトの背景とテキストの色で適切に置き換えられたキーワードを返します。
<span style="background-color:#FFFF66; color:#FF0000;">25 Hours: Colour In White</span> (CD)
しかし!このキーワードを使用する場合、括弧文字列(
と)
$text_search = "25 Hours: Colour In White (CD)";
置き換えられた背景とテキストの色は返されません。
(
かっこでこだわっていると思います)
(
問題は、括弧文字列と)
?で問題なく一致したすべてのテキストキーワードを強調表示する方法です。
あなたのアイデアを共有してください。ありがとう :)