gpt4 book ai didi

javascript - 正则表达式不适用于字符串名称

转载 作者:行者123 更新时间:2023-11-29 18:17:53 25 4
gpt4 key购买 nike

我在 javascript 中有一个不工作的正则表达式。我的代码是...

JavaScript :

  function doit()
{
var string="something";
var el=document.getElementById("monu");
el.innerHTML = el.innerHTML.replace(/(string)/ig,"Everything");
}

HTML :

    <div id="monu">something is better than nothing</div>
<button onclick=doit();>replace</button>

如果我使用 string 作为模式,则在函数替换中它不起作用。我怎样才能让它工作......任何建议..

最佳答案

使用the RegExp constructor :

el.innerHTML = el.innerHTML.replace(new RegExp(string,'ig'),"Everything");

请注意,如果您想要替换包含特殊正则表达式模式的字符串而不将它们解释为正则表达式模式(例如您想要完全替换 ".*"),那么您需要转义您的字符串.不幸的是,在 JavaScript 中没有标准函数,但它很容易编写和查找(这里是 one )。

关于javascript - 正则表达式不适用于字符串名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21432159/

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