用于获取URL的路径名的正则表达式

时间:2012-03-13 08:56:52

标签: javascript regex

我想提取完整的路径,即javascript中URL的主机名所遵循的路径。

var url = 'https://domain.us/file.php/fghfgh?id=1'

我想提取/file.php/fghfgh?id=1

如何只使用正则表达式而不是“document.createElement('a')”方法?

我需要正则表达式中的答案,

3 个答案:

答案 0 :(得分:2)

如果您正在访问location object,则可以

var path = location.href.replace(location.protocol+"//"+location.hostname,"")

var path = location.pathname+location.search

如果你有#,你也可能需要添加它,正如just_mad指出的那样:

var path = location.pathname+location.search+location.hash

答案 1 :(得分:1)

如何使用经过验证的真实内容:http://blog.stevenlevithan.com/archives/parseuri

甚至还有一个演示:http://stevenlevithan.com/demo/parseuri/js/

答案 2 :(得分:1)

这是针对您的问题的更具体的正则表达式;

https?://[-A-Z0-9.]+(/[-A-Z0-9+&@#/%=~_|!:,.;?]*)?