我需要一个将URL从文件名中排除的正则表达式。
输入:'something.something.com/som/som/som/abcd.html'
应该返回:'something.something.com/som/som/som/'
我创建了这个正则表达式:
((?:[a-z0-9\.\_]+)(?:\/)(?:.*?)(?:\/))(?:[a-z0-9]+)(?:\.)(?:[a-z0-9]+)
我尽力而为,并提供正确的输出(在regex101.com [PCRE]测试)。
我是否需要添加/删除其他内容?还有什么建议吗?并且不建议使用parse_url()
,如果URL没有'http://'则没用。
答案 0 :(得分:0)
使用PHP:
$dir = dirname("something.something.com/som/som/som/abcd.html");
使用正则表达式:
$dir = preg_replace("|[^/]+\.[^/]+$|", "$1", $dir);