我试图将[[
替换为${
。
var str = "it is [[test example [[testing";
var res = str.replace(/[[[]/g, "${");
我得到的结果是 "it is ${${test example ${${testing"
,但我想要的结果是 "it is ${test example ${testing"
。
我试图将[[
替换为${
。
var str = "it is [[test example [[testing";
var res = str.replace(/[[[]/g, "${");
我得到的结果是 "it is ${${test example ${${testing"
,但我想要的结果是 "it is ${test example ${testing"
。
您的正则表达式不正确。
[[[]
将匹配一个或两个 [ 符号,并将其中一个 [
替换为 ${
。
请参见 错误正则表达式的演示。
[
是正则表达式中的特殊符号。因此,要匹配文字意义上的 [
,需要通过在 regex
中添加 \
对其进行转义。否则,[
会被视为字符类。
var str = "it is [[test example [[testing";
var res = str.replace(/\[\[/g, "${");
// ^^^^
document.write(res);
你想要使用反斜杠 \ 来转义 [ 符号。
var res = str.replace(/\[\[/g, "${");
[
前使用 \
。var str = "it is [[test example [[testing";
var res = str.replace(/\[\[/g, "${");
var res = str.split('[[').join('${');
样例展示:
var str = "it is [[test example [[testing";
var res = str.split('[[').join('${');
document.write(res);