0

我正在尝试使用正则表达式将字符串中的数字替换为另一个数字。这应该非常简单,但由于某种原因,今天让我很伤心。字符串中的“feed”是动态的,只能包含字母或数字。

这是我尝试过的:

$new_number = 999;
$string = '/feed/page/1/?param=true';
preg_replace('/\/([0-9a-z])\/page\/([0-9])\/(.*)/i', '/$1/page/'.$new_number.'/$3', $string);

应该输出:'/feed/page/999/?param=true'

4

2 回答 2

2

忘记+的,是吗?:P 试试这个作为你的正则表达式:

'/\/([0-9a-z]+)\/page\/([0-9]+)\/(.*)/i' 
于 2013-03-11T01:12:48.530 回答
1

试试这个:

\/([0-9a-z]{1,})\/page\/([0-9]{1,})\/(.*)
于 2013-03-11T01:01:38.857 回答