最后一次删除JavaScript RegEx之后的所有字符

时间:2016-03-19 20:11:08

标签: javascript regex

我将此作为字符串

http://steamcommunity.com/id/user/

当我使用这个正则表达式模式时:[^\/]+\/$我得到的结果是

user/

我试图否定最后/我可以得到

user

我该如何做到这一点?

2 个答案:

答案 0 :(得分:3)

试试这段代码:

var string = 'http://steamcommunity.com/id/user/'
document.body.innerHTML = string.match(/([^/]+)\/$/)[1]

我添加了一个捕获组来捕获用户文件夹。

由于那是1st捕获组,我从1

中选择了返回数组的索引string.match()处的项目

var string = 'http://steamcommunity.com/id/user/'

document.body.innerHTML = string.match(/([^/]+)\/$/)[1]

Demo on JSFiddle

答案 1 :(得分:1)

使用此([^\/]+)\/$之类的捕获组,并使用\1捕获第一个组。 Demo

使用lookahead这样的([^\/]+)(?=\/$)断言。 Demo

第二种方法将直接捕获user,而不会弄乱捕获组。