正则表达式获取网址

时间:2016-08-20 11:50:36

标签: javascript regex url

说我有一个网址:

http://www.example.com/foo/bar/yes_no_no.html

我正在寻找一个可以提取文件名的所有字符到第一个下划线的正则表达式。所以在上面的URL中我想提取"是"。

到目前为止,我设法得到了整个" yes_no_no"位使用:

/([^\/]+)(?=\.\w+$)/,但我似乎无法匹配"是"。

1 个答案:

答案 0 :(得分:3)

试试这个:

/\/([^_\/]+)_?[^\/]*\.[a-z]+$/

示例:



console.log('http://www.example.com/foo/bar/yes_no_no.html'.match(/\/([^_\/]+)_?[^\/]*\.[a-z]+$/)[1])
console.log('http://www.example.com/foo/bar/yes.html'.match(/\/([^_\/]+)_?[^\/]*\.[a-z]+$/)[1])