【问题标题】:Trim URL by variable按变量修剪 URL
【发布时间】:2014-12-13 13:07:11
【问题描述】:

您好,我有一个这样的链接:

mypage.php?product=3&page=1

我想删除 &page=1, &page=2, &page=5 等等。 这个我试过了,但我觉得不对。

str_replace('/(\\?|&)page=.*?(&|$)/', '', $link);

感谢您的帮助。

【问题讨论】:

    标签: php regex str-replace


    【解决方案1】:

    str_replace() 不适用于正则表达式,因此您可以改用preg_replace()

    $url = preg_replace('/[?&]page=[^&]+/', '', $url);
    

    这里有两个变化:首先,当您仅针对单个符号时,最好使用字符类而不是交替(不必在括号内转义 ? 是一个不错的奖励),第二,[^&]+ ('match任意数量的非&字符') 结构比.+?(&|$) 更直接和可读。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2021-01-06
      • 2011-03-18
      • 2011-06-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多