您好我想知道如何删除网址中的所有重复字符,但保持http://和查询字符串完整。
示例网址:
https://domain.com:800///some/here..jpg
目前有这个代码删除重复的字符:
preg_replace('/([^a-zA-Z0-9-_\s])\\1+/', '$1', urldecode($url))
并解析为:
https:/domain.com:800/some/here.jpg <-- removed the / from https://
如何才允许更换路径并保持其余部分完好无损?
答案 0 :(得分:1)
我对正则表达式并不擅长,所以我可以在不修改代码的情况下为您提供替代解决方案:
$url = "https://domain.com:800///some/here..jpg";
$url_without_https = substr($url, 8); //assuming its always https://
$urlModified = preg_replace('/([^a-zA-Z0-9-_\s])\\1+/', '$1', urldecode($url_without_http));
$url = "http://" . $urlModified;