【发布时间】:2014-08-26 18:07:10
【问题描述】:
我想替换正则表达式匹配的括号内的文本(第一组正则表达式)
换句话说,我尝试捕获像“[SomeText][1]”这样的字符串,并将其中的数字 1 替换为数字 2。下面的代码将所有字符串替换为我不想要的 2。
regex = new RegExp("\\[.*\\]\\[(1)\\]");
textarea.val().replace(regex, 2);
SomeText 正在发生变化。所以replace("[SomeText][1]", "[SomeText][2]") 不起作用。
【问题讨论】:
-
为什么不直接
textarea.val().replace(/\[1\]$/, '[2]');? -
可以有多个[1],但不能有多个[SomeText][1]
-
它只替换最后一个
[1],因为有一个$