繁体   English   中英

正则表达式从URL中排除文件名

[英]regex to exclude filename from url

我需要一个正则表达式,它将排除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://'则没有用。

使用PHP:

$dir = dirname("something.something.com/som/som/som/abcd.html");

使用正则表达式:

$dir = preg_replace("|[^/]+\.[^/]+$|", "$1", $dir);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM