Javascript 使用JS Regex获取第一个值,并使用动态尾随值处理字符串

Javascript 使用JS Regex获取第一个值,并使用动态尾随值处理字符串,javascript,jquery,regex,Javascript,Jquery,Regex,给定以下字符串变体: var string = "groups/Da12312a" var string = "groups/Da12312a/search" var string = "groups/Da12312a/search/sam" var string = "groups/3131" var string = "groups/444/search" var string = "groups/123asdadsZad/search/sam" 我怎样才能只返回组/后面以第一个“/”结尾

给定以下字符串变体:

var string = "groups/Da12312a"
var string = "groups/Da12312a/search"
var string = "groups/Da12312a/search/sam"
var string = "groups/3131"
var string = "groups/444/search"
var string = "groups/123asdadsZad/search/sam"
我怎样才能只返回组/后面以第一个“/”结尾的值

期望输出:

Da12312a
Da12312a
Da12312a
3131
444
123asdadsZad
使用jQuery还是JavaScript?谢谢

var output = string.split('/')[1];
参考资料


下面是一个示例和输出。

您可以使用
split
方法

string.split("/")[1];

我将使用一个简单的正则表达式

var str = 'groups/foo';
var matches = /groups\/([^/]*)/.exec(str);
匹配现在将包含一个数组,其中索引0为“groups/100”,索引1为“foo”


如果需要正则表达式,可以使用以下命令:

/^[^\/]*?\/([^\/]*).*/
基本上,捕获的组会产生您想要的结果

使用类似于:

"groups/Da12312a/search".match(/^[^\/]*?\/([^\/]*).*/)
["groups/Da12312a/search", "Da12312a"]

"groups/Da12312a".match(/^[^\/]*?\/([^\/]*).*/)
["groups/Da12312a", "Da12312a"]

"groups/3131".match(/^[^\/]*?\/([^\/]*).*/)
["groups/3131", "3131"]
如您所见,在每种情况下,数组索引[1]都是您的结果

希望有帮助

"groups/Da12312a/search".match(/^[^\/]*?\/([^\/]*).*/)
["groups/Da12312a/search", "Da12312a"]

"groups/Da12312a".match(/^[^\/]*?\/([^\/]*).*/)
["groups/Da12312a", "Da12312a"]

"groups/3131".match(/^[^\/]*?\/([^\/]*).*/)
["groups/3131", "3131"]