2017-04-05 9 views
-1

ハイライトを複数ワードにしたいphp複数の単語をハイライト表示

すべての検索用語が重複していても検索したい。

私が検索した場合、ABとBCのABCはハイライト

+1

申し訳ありませんでしょうが、あなたが実際に聞いて何不明です。検索やハイライトに関する質問ですか?質問を修正し、実際に何をしたいのかを詳しく説明してください。 – arkascha

+0

ab単語を強調表示したい場合は、spanにCSSを適用してください。 –

+0

質問を変更します。@arkascha –

答えて

1
Use this line of code which helps to highlights the search string: 
<?php 
function highlightsWords($text, $words) { 
    preg_match_all('~\w+~', $words, $m); 
    if(!$m) return $text; 
    $re = '~\\b(' . implode('|', $m[0]) . ')\\b~i'; 
    return preg_replace($re, '<b>$0</b>', $text); 
} 

$text = 'Hang Seng Index advanced 0.6% to 24,400.80, after falling as much as 0.4% earlier'; 
$words = 'hang earlier'; 
echo highlightsWords($text, $words); 
?> 
+0

良いアプローチですが、要求に応じて部分的には失敗します。 – arkascha

+0

また、正規表現が壊れるのを防ぐために、検索語を引用する必要があります。 – arkascha

関連する問題