首页 >后端开发 >php教程 >替换preg_replace.如何老是【吃掉】前面的一个字符.

替换preg_replace.如何老是【吃掉】前面的一个字符.

WBOY
WBOY原创
2016-06-13 10:31:58946浏览

替换preg_replace.怎么老是【吃掉】前面的一个字符...
为什么用下面代码进行替换.怎么老是吃掉前面的一个字符......

代码如下:这两句代码都有这个问题...

PHP code
<!--Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->        $newstext = preg_replace('/'.$r[keyname].'/u','<a href="%5C''.%24r%5Bkeyurl%5D.'%5C'" target="\'_blank\'">'.$r[keyname].'</a>',$newstext,$public_r[repkeynum]);


PHP code
<!--Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->        $newstext = preg_replace('/[^=>]'.$r[keyname].'/u','<a href="%5C''.%24r%5Bkeyurl%5D.'%5C'" target="\'_blank\'">'.$r[keyname].'</a>',$newstext,$public_r[repkeynum]);


比如说...string = "我的美好一天从此开始了"
关键词是 : 美好

替换后就成了 : 我美好一天从此开始了

搞的我好郁闷啊....

------解决方案--------------------
不会出现你说的情况。你的 $r[keyname] 是什么东西?
------解决方案--------------------
第一式正确
第二式是你说的现象: [^=>] 会吃掉一个字符
------解决方案--------------------
求解
------解决方案--------------------

$str = "我的美好的一天开始了";
$newstext = preg_replace('/美好/', '美好', $str);
echo $newstext;
?>
声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn