gpt4 book ai didi

javascript - JS regex.exec() 返回第一个 find

转载 作者:行者123 更新时间:2023-11-30 18:24:47 25 4
gpt4 key购买 nike

我正在尝试学习如何分解这个字符串:

var str = 'red','blue','gree'

我有这个工作代码:

var clean = str.replace(/\'/g, "");
var elements = clean.split(',');

生成数组 ["red","blue","green"] 这正是我想要的。我想了解如何使用 regex.exec() 方法执行此操作。

这是我得到的:

var patt = /([^']+)/g;
var elem= patt.exec(str);

但这会返回数组 ["red","re​​d"]

有什么想法吗?

最佳答案

使用exec,要获得多个匹配项,您需要循环运行它...

var str = "'red','blue','gree'"; // making a guess here

var patt = /([^']+)/g;
var match;

// v----yes, an assignment
while(match = patt.exec(str)) {
console.log(match[1]);
}

演示: http://jsfiddle.net/D62D4/

全局正则表达式在自身上存储最后一次匹配结束后的索引,并从该点开始执行下一个查询。

这一直持续到没有匹配为止,此时索引被设置回 0

您可以使用 .lastIndex 属性在正则表达式上观察和修改此索引。

关于javascript - JS regex.exec() 返回第一个 find,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11165522/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com