javascript string.replace $1是否是某个值?

javascript string.replace $1 if it is a certain value?

有什么方法可以检查 </code> 的值,如果等于 <code>"left" 则替换为 "newleft"

像这样:str.replace(re, 'Blah blah , ="left" ? "newleft": "something" ');

如果您将回调函数作为 the string place method 的第二个参数传递,则从正则表达式中捕获的字符串将作为参数传递给回调函数。您可以将这些参数用于 return 新字符串,并对捕获的字符串执行任何必要的逻辑。

示例 1:

'left, right'.replace(/(.*),\s(.*)/, function(match, p1, p2) {
    return 'Blah blah ' + p2 + ', ' + (p1 === 'left' ? 'newleft' : 'something');
});

回复:

"Blah blah right, newleft"

示例 2:

'top, right'.replace(/(.*),\s(.*)/, function(match, p1, p2) {
    return 'Blah blah ' + p2 + ', ' + (p1 === 'left' ? 'newleft' : 'something');
});

回复:

"Blah blah right, something"