我试图做一个从字符串中提取标签的脚本
为此,我使用了RegExp
我尽可能简化了我的代码。
var ereg = /(\[text\](.+)\[\/text\])+?/;
var str = '[text]MyText[/text][text]MyOtherText[/text]';
result = ereg.exec(str);
if (result) {
for (i = 0; i < result.length; i++) {
document.body.innerHTML += "<br>[" + i + "] => " + result[i];
}
}
输出:
[0] => [text]MyText[/text][text]MyOtherText[/text]
[1] => [text]MyText[/text][text]MyOtherText[/text]
[2] => MyText[/text][text]MyOtherText
我的问题是我希望变量结果返回标签之间的内容[text] [/ text],意思是&#39; MyText &#39; et&#39; MyOtherText &#39;。
相反,它返回我的MyText ** [/ text] [text] MyOtherText **&#39;。
我该怎么做呢?
我的正则表达式不是非贪心?