我对正则表达式不是很了解,因为我还没有理解它是如何完全正常的以获得正确的结果。我需要一个正则表达式或php函数来去掉一个url的开头,以获得最后一个没有变量的位。
输入: http:// www.site.com/more/more/thepartidneed?part=Idontneed
其他输入:www.site.com/more/more/thepartineed?partidontneed
其他输入:site.com/more/more/partineed
剥离后所需的结果: “thepartineed”
这可能吗?
答案 0 :(得分:2)
首先,你需要在开头检查给定的网址是否包含http(s)://
- 如果没有 - 附加它,然后执行
$parsed_url = parse_url($url);
var_dump($parsed_url);
你会得到这样的东西:
array(3) {
["scheme"]=>
string(4) "http"
["host"]=>
string(8) "site.com"
["path"]=>
string(20) "/more/more/partineed"
}
如果您只需要最后一点路径
echo array_pop(explode('/', $parsed_url['path']));
答案 1 :(得分:1)
假设输入总是某种url:
.+/([^?]+).*
您的部分应该在标识符1
中