preg_replace函数的替换问题!

songzairan 2008-12-17 05:28:44
$a1=array("有色眼镜","眼镜");
$a2=array("<strong>有色眼镜</strong>","<small>眼镜</small>");

$content="我喜欢有色眼镜,其他的眼镜不太喜欢!";

preg_replace($a1,$a2,$content,1);

我最终的目的是,让$content输出的结果是:我喜欢<strong>有色眼镜</strong>,其他的<small>眼镜</small>不太喜欢!

可是问题来了,按我上面的执行,结果是:我喜欢<strong>有色<small>眼镜</small></strong>,其他的眼镜不太喜欢!

请问我如何修改,才能打到我的最终目的呢?

...全文
154 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
songzairan 2008-12-22
  • 打赏
  • 举报
回复
[Quote=引用 11 楼 jakey9826 的回复:]
引用 7 楼 jakey9826 的回复:
PHP code
$a1=array("/眼镜/","/有色 <small>眼镜 <\/small>/");
$a2=array(" <small>眼镜 </small>"," <strong>有色眼镜 </strong>");
$content="我喜欢有色眼镜,其他的眼镜不太喜欢!";
echo preg_replace($a1,$a2,$content);

这样不可以吗??
呵呵!
[/Quote]
这样做可以!但是我在这里只是举个例子,实际中不可能这样!如果"眼镜"和"有色眼镜"这两个次反复出现呢?
我想知道,有没有能做什么判断的方法来实现他的替换啊?或者还有其他方法!谢谢大侠关注!
程序猿之殇 2008-12-19
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 jakey9826 的回复:]
PHP code
$a1=array("/眼镜/","/有色<small>眼镜<\/small>/");
$a2=array("<small>眼镜</small>","<strong>有色眼镜</strong>");
$content="我喜欢有色眼镜,其他的眼镜不太喜欢!";
echo preg_replace($a1,$a2,$content);
[/Quote]
这样不可以吗??
呵呵!
程序猿之殇 2008-12-18
  • 打赏
  • 举报
回复

$a1=array("/眼镜/","/有色<small>眼镜<\/small>/");
$a2=array("<small>眼镜</small>","<strong>有色眼镜</strong>");
$content="我喜欢有色眼镜,其他的眼镜不太喜欢!";
echo preg_replace($a1,$a2,$content);
songzairan 2008-12-18
  • 打赏
  • 举报
回复
[Quote=引用 9 楼 wanglinmingtina 的回复:]
不好意思,发错了
[/Quote]

呵呵!没事儿!来这就是交流和求助!感谢你的留言!
jlokys 2008-12-18
  • 打赏
  • 举报
回复
不好意思,发错了
jlokys 2008-12-18
  • 打赏
  • 举报
回复
<?php
$a1=array("有色眼镜","眼镜");
$a2=array(" <strong>有色眼镜 </strong>"," <small>眼镜 </small>");

$content="我喜欢有色眼镜,其他的眼镜不太喜欢!";

echo str_replace($a1,$a2,$content);
?>
kfjfox 2008-12-17
  • 打赏
  • 举报
回复
$a1=array("/有色眼镜/","/眼镜[^<]/");
$a2=array("<strong>有色眼镜</strong>","<small>眼镜</small>");
preg_replace($a1,$a2,$content);

试试这个看行不行
songzairan 2008-12-17
  • 打赏
  • 举报
回复
求教,就是不会写判断,我也知道判断!
cuidenghong123 2008-12-17
  • 打赏
  • 举报
回复
替换这个时<small>眼镜 </small> 加个判断
testoktest 2008-12-17
  • 打赏
  • 举报
回复
替换 眼镜 的时候,要求 眼镜 前后不能有 > < 这种符号,如果有,认为被替换过了,这样应该能够区别吧……
具体请楼上或楼下写正则……
songzairan 2008-12-17
  • 打赏
  • 举报
回复
自己顶一个!
songzairan 2008-12-17
  • 打赏
  • 举报
回复
自己顶一个

21,886

社区成员

发帖
与我相关
我的任务
社区描述
从PHP安装配置,PHP入门,PHP基础到PHP应用
社区管理员
  • 基础编程社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧