如何在jquery中替换[{}]括号内的文本

时间:2018-05-26 03:26:31

标签: jquery regex

如何替换jquery中包含括号的[{}]括号内的文本? 尝试使用正则表达式

var text = "Hi [{FName}{LName}]";
text.replace(/\[{(.*?)}]/g,'contactname');

text.replace(/[{.*}]/, 'contactname');

Expcted Output:" Hi contactname&#34 ;;

1 个答案:

答案 0 :(得分:0)

要删除内部部分但保留[{}],您可以使用.replace使用回调函数替换内部捕获组1(包含您想要的任何内容):

const regex = /\[{(.*?)}\]/g;
const str = `some text [{xxxxxx}] more text
bt [{yyyyy}] ct
no match here`;

// The substituted value will be contained in the result variable
const result = str.replace(regex, function(m, group1) {
    if (group1) return "[{}]"
    else m;
});

console.log('Substitution result: ', result);

否则只需使用var result = str.replace(/\[{(.*?)}\]/g, '[{}]');