テキストから特定の単語を検索し、その単語の周りに html タグを追加しようとしています。
問題、文字列を検索する単語はテキストファイルに保存され、大文字、小文字などにすることができます.preg_replaceを使用してこれを行うと、タグを追加して正しく置き換えることができますが、たとえばAPPLESと文字列に「りんご」が含まれていると、フォーマットがりんごからAPPLESに変更されます。フォーマットを同じままにしておきます。
preg_replace を使用してみましたが、同じ単語のケーシングを維持する方法が見つかりません。これは私が持っているものです:
foreach($keywords as $value)
{
$pattern = "/\b$value\b/i";
$replacement = "<b>$value</b>";
$new_string = preg_replace($pattern, $replacement, $string);
}
したがって、$value が APPLES の場合、$replacemant の $value が "APPLES" であるため、$string 内のリンゴのすべてのケース形式が大文字に変更されます。
ケース形式が同じままで、異なるバージョンのケース形式で複数のループを実行する必要なく、どうすればこれを達成できますか?
ありがとう