我想从0
inner_string
和"string[0][inner_string]"
我的方法使用lookbehind和looahead零长度断言。
这是正则表达式:
+--- Look ahead
|
v
/(?<=\[)(.*?)(?=\])/g
^
|
+--- Look behind
var str = "string[0][inner_string]";
console.log(str.match(/(?<=\[)(.*?)(?=\])/g));
&#13;
但是,我收到了错误。
是否可以使用环视?
答案 0 :(得分:1)
引用 @ctwheels :“Lookbehinds在JavaScript(see the current stage of the TC39 proposal)中几乎没有支持。在撰写本文时,只有Chrome(从版本62开始)和Moddable(在1月17日之后) ,2018)支持JavaScript中的lookbehinds。“
正则表达式:\[([^\]]+)\]
str = 'string[0][inner_string]'
re = /\[([^\]]+)\]/g
while(match = re.exec(str)) {
console.log(match[1])
}