从网址中删除字符

时间:2014-03-24 04:05:53

标签: php regex preg-match

我关注url。使用 php 我想从此url删除 /?qa = ask& cat = 2 / 并替换为/

  

http:/mysite.appspot.com/_ah/upload /?qa = ask& cat = 2 /   AMmfu6annb0ziCG7zXsrvLvZLzLsAh-nIitRGGfcxpcNoMTQBvsnxULJ_B5n932EDV5_jd-rllvnSfI5cqPpRUJ8FG6G17J7PHncolJ09PTu_QSLCY6JoVWc9vnmK0Pubx0Xe0OFXepcaXzXJAT1zjShFUFSfEMcCxC5yleRlo7ax2IdRVrPWHHdIqs8XvoOvmNT_7MhnOM4 / ALBNUaYAAAAAUy-qo2Nb0qSl-OCR3pifnmzY7HpSBoAt

所以新的url如下所示:

  

的http:/mysite.appspot.com/_ah/upload/AMmfu6annb0ziCG7zXsrvLvZLzLsAh-nIitRGGfcxpcNoMTQBvsnxULJ_B5n932EDV5_jd-rllvnSfI5cqPpRUJ8FG6G17J7PHncolJ09PTu_QSLCY6JoVWc9vnmK0Pubx0Xe0OFXepcaXzXJAT1zjShFUFSfEMcCxC5yleRlo7ax2IdRVrPWHHdIqs8XvoOvmNT_7MhnOM4/ALBNUaYAAAAAUy-qo2Nb0qSl-OCR3pifnmzY7HpSBoAt

我想我可以使用preg_replace ($pattern,$replacement,$subject)函数,其中$subject$replacement分别是原始url/字符。

但我无法弄清$pattern表达式。

请帮忙。

4 个答案:

答案 0 :(得分:0)

如果总是/?qa=ask&cat=2/使用str_replace()。如果它是按位置(例如在问号之后和下一个斜线之前)那是另一回事。

答案 1 :(得分:0)

这是模式。

$pattern = "?qa=ask&cat=2/";

这是文档。 http://www.php.net/preg_replace

答案 2 :(得分:0)

一旦找到/?,请在找到下一个/之前替换所有内容:

preg_replace('~/?[^/]+/~', '/', $str);

答案 3 :(得分:0)

请参阅此https://eval.in/125432

$result = preg_replace ("/\?qa=ask&cat=\d+\//","",$url);

echo $result;