用自定义字符串替换页面号

时间:2012-05-16 06:38:13

标签: php regex preg-replace

有一个字符串

http://www.ccdcdlmcc.sdc.smdc.,ms.cmcsjh?page=2$#$#L$JK#J$LK#J$

我想用不同的字符串“[pageno]”(包括方括号)替换页码, 所以我的最后一个字符串将是:

http://www.ccdcdlmcc.sdc.smdc.,ms.cmcsjh?page=[pageno]$#$#L$JK#J$LK#J$

我已经尝试使用 explode 和str_split($ string),但没有运气......可以通过正则表达式完成吗?

我的主要字符串http://www.xyz.com/s/ref=sr_pg_2?rh=n%3A117332031%2Cn%3A!117333031%2Cn%3A118457031%2Cn%3A118458031&page=2&bbn=118457031&ie=UTF8&qid=1337146507

2 个答案:

答案 0 :(得分:1)

你走了:

$str=preg_replace("/(\\?)(page)(=)(\\d+)/","?page=[pageno]",$yourstring);

答案 1 :(得分:0)

这是另一种方法:

<?php

$str = "http://www.ccdcdlmcc.sdc.smdc.,ms.cmcsjh?page=2$#$#L$JK#J$LK#J$";

echo preg_replace('/page=([0-9]+)/', 'page=[pageno]', $str);
?>

我认为页码只是一个数值。否则你必须用[0-9a-zA-Z]和你想要允许的其他字符扩展[0-9]。