我在这样的textarea中有一个文本;
[Some Text][2][2]:SomeText
我想先将2更改为1.要执行此操作,请尝试通过以下正则表达式匹配[Some Text][1]
regex = new RegExp("(\\[.*\\]\\[)2(\\])");
并使用此代码替换它;
textarea.val().replace(regex, "$11$2");
然而,我的正则表达式匹配[Some Text][2][2]
并将第二个2替换为1.我如何匹配[Some Text][2]
并替换前2个。
答案 0 :(得分:0)
.*
过于贪心,将你的正则表达式改为:
regex = new RegExp("(\\[[^\\]]*\\]\\[)2(\\])");
您也可以使用:
regex = new RegExp("(\\[.*?\\]\\[)2(\\])");