php替换问题

时间:2011-01-19 18:41:13

标签: php replace

有一些网址,例如11162_sport.html11451_sport.html11245_sport.html231sport.html, 我希望当XXXXX_sport.html这样的网址将其替换为11162_football.html11451_football.html11245_football.html,而231sport.html没有变化时。

如何替换它们,$newurl = preg_replace("_sport.html","_football.html",$url)?感谢。

3 个答案:

答案 0 :(得分:3)

只需$newurl = str_replace("_sport.html", "_football.html", $url);
这比执行preg_replace()更快,更准确。请参阅the manual on str_replace

答案 1 :(得分:1)

您可以使用str_replace进行此类简单替换。

答案 2 :(得分:1)

如果必须是正则表达式,请执行:

preg_replace('/_sport\.html$/', '_football.html', $url);

str_replace()会不确定地替换 {/ 1>}的所有出现,而带有行尾标记(sport.html)的正则表达式只会替换模式在URL的末尾。

点需要转义,因为它匹配任何字符(新行除外)。