我一直在寻找一段时间,而且我花了很多时间进行反复试验,但仍然无法做到正确:/
我要做的是采取像网址一样的字符串:
www.something.com/something.html?user=1&page=1
并删除字符串中的"&page=1"
。此字符串可能在&variable
后有另一个"&page=*"
,因此我希望它只删除"&page=*"
。
我一直在尝试的是:
$url = preg_replace("/&page=\.{*}&?/","",$url);
所以换句话说:"&page=" + anynumber + till end of number or next "&"
有什么想法吗?
谢谢!
答案 0 :(得分:3)
preg_replace('/&page=[^&#]*/', '', $url)
这匹配&page=
后跟0或更多(即*
位)不是&
或#
的字符。 [...]
代表一组字符; [^...]
反转集合。
换句话说,它会匹配&page=
之后的所有内容,直到下一个&
或#
(或字符串结尾)。