gpt4 book ai didi

Javascript - 使用 RegExp 进行替换时遇到问题

转载 作者:行者123 更新时间:2023-12-02 19:53:22 25 4
gpt4 key购买 nike

我正在尝试进行 Javascript 替换(从字符串中删除一些单词),但我需要使用一个变量,因此我使用 new RegExp() ,如下所示,但是我无法弄清楚为什么正则表达式没有替换这些单词。当我使用相同的正则表达式并且不使用 new RegExp() 时,它工作正常。

http://jsfiddle.net/HkEjB/

var string = "foo bar foo bar";

// With RegExp
var replace = "foo";
var regex = new RegExp("\b" + replace + " \b|\b " + replace + "\b|^" + replace + "$", 'igm');
document.write(string.replace(regex, ""));

// Without RegExp
document.write('<br>');
document.write(string.replace(/\bfoo \b|\b foo\b|^foo$/igm, ''));

最佳答案

您需要转义反斜杠:http://jsfiddle.net/HkEjB/1/

var string = "foo bar foo bar";

// With RegExp
var replace = "foo";

var regex = new RegExp("\\b" + replace + " \\b|\\b " + replace + "\\b|^" + replace + "$", 'igm');
document.write(string.replace(regex, ""));

关于Javascript - 使用 RegExp 进行替换时遇到问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8966923/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com