gpt4 book ai didi

javascript - 查找捕获的起始索引(以字符串形式)[JS/RegExp]

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

我是否可以找到我的 RegExp 捕获的索引(以字符串形式)?例如……

var str = "hello world";
var regex = /lo (wo)/;
var match = regex.exec(str);
// what I want is something like
var index = match[1].index; // where index = 6

最佳答案

indexOf() 应该给你你想要的:

var index = str.indexOf(match[1]);

jsFiddle example

如果你想遍历每个匹配项,你需要在正则表达式中添加一个 g 修饰符,遍历它并每次调用 indexOf()。在您的循环中,您将第二个参数传递给 indexOf() 以告诉它从哪里开始查找。

var str = "hello world hello world";
var regex = /lo (wo)/g;
var match;
var prevIndex, currIndex;
var indexes = [];

while (match = regex.exec(str)) {
currIndex = str.indexOf(match[1], prevIndex);
indexes.push(currIndex);
prevIndex = regex.lastIndex;
}

jsFiddle example

关于javascript - 查找捕获的起始索引(以字符串形式)[JS/RegExp],我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4367975/

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