我想在option1, option2
字符串之后选择所有fromHere
等..但我最终只选择最后一次出现(option4
)
这是一个例子
正则表达式:/(?=fromHere(.+((option\d))))/g
文本:
Ok ignoring this whole line option1 ignore
fromHere I want to match all option1 ignore option2 ignore option3 xxxx
option4 but got only the last one (4)
我找不到任何解决方案。
答案 0 :(得分:2)
您可以将String.prototype.split()
与RegExp
/fromHere
一起使用,将"fromHere"
字符串从结果数组Array.prototype.pop()
中删除,以获取数组的索引1
,String.prototype.match()
与RegExp
/option\d/g
匹配"optionN"
字符串。
let str = ` Ok ignoring this whole line option1 ignore
fromHere I want to match all option1 ignore option2 ignore option3 xxxx
option4 but got only the last one (4)`;
let res = str.split(/fromHere/).pop().match(/option\d/g);
console.log(res);