为什么用下面代码进行替换.怎么老是吃掉前面的一个字符......代码如下:这两句代码都有这个问题...
        $newstext = preg_replace('/'.$r[keyname].'/u','<a href=\''.$r[keyurl].'\' target=\'_blank\' >'.$r[keyname].'</a>',$newstext,$public_r[repkeynum]);        $newstext = preg_replace('/[^=>]'.$r[keyname].'/u','<a href=\''.$r[keyurl].'\' target=\'_blank\' >'.$r[keyname].'</a>',$newstext,$public_r[repkeynum]);
比如说...string = "我的美好一天从此开始了"
关键词是 : 美好替换后就成了 : 我<a href=xx>美好</a>一天从此开始了搞的我好郁闷啊....

解决方案 »

  1.   

    不会出现你说的情况。你的 $r[keyname] 是什么东西?
      

  2.   


    应该怎么改????to jordan102   : $r[keyname] 就是 关键词... 
    一个key = 关键词
    一个value = url
      

  3.   

    你干脆给出A和B,然后我们贴A怎么变成B.
      

  4.   

    <?php$str = "我的美好的一天开始了";
    $newstext = preg_replace('/美好/', '<a href=\'aaa.com\' target=\'_blank\' >美好</a>', $str);
    echo $newstext;
    ?>