有三种方式可试试:1、一般不会有人单独搜索br吧~  呵呵 所以别让人搜索br得了 :-D
2、形式上替换<br>为空再模糊查询
3、正则好像应该这么写:  (?!<)br(?!>)

解决方案 »

  1.   

    你的搜索语句写成
    $exec="select * from aa where content like '%[^<]".$keyword."[^>]%'";
    试试看
      

  2.   

    做一下就知道了
    <?php
    $s = 'xxxxbryyyy<br>ppp';
    echo preg_replace('/(?!<)(br)(?!>)/', '<font color=red>$1</font>', $s);
    ?>
      

  3.   

    感谢以上诸位,我通过 唠叨 的公式明白一些了我是想让“$keyword”绕过<br>、&nbsp;、&quot;、&#039;、&lt;、&gt这些字符搜索,就是不查询这些字符当中的字母,好弄不!我挺能举一反四的^_^