0

検索結果の単語を強調表示するために preg_replace を使用しています。検索結果には、テキストだけでなく URL が含まれることもあります。一部の URL にはキーワードが含まれています。preg_replace も URL を変更するため、URL がめちゃくちゃになります。

preg_replace で URL を無視する方法はありますか?

これは私が使用するものです:

$result = preg_replace('!('.$keyword.')!i', '<span style="background: #f00;">$1</span>', $result);

ありがとう!

4

1 に答える 1

1

編集..わかりまし
た、これは役に立ちますか?
結果を配列にしてから、URLが含まれているかどうかを確認しますか?

 <?php
    $result = "This is Stpartāāa http://google.lv ";
    $arr = explode(" ", $result);
    foreach($arr as $key => $value) {
        if ((strpos($value,'http://') !== false) AND (strpos($value,'www.') !== false)) {
                // do nothing
            } else {
                // do somthing
            }
    }
    ?>
于 2012-08-23T11:20:20.177 に答える