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"]