替换所有</脚本>;带有<\/脚本>;在javascript或jquery中

替换所有</脚本>;带有<\/脚本>;在javascript或jquery中,javascript,replace,backslash,Javascript,Replace,Backslash,我需要用这些标签替换所有这些标签 之前:->.code。。代码.. 之后:--->。代码。。代码.. 但这不起作用: function myReplace(){ var X = document.getElementById("demo").innerText; var Y = X.replace(/</script>/ig, '<\/script>'); document.getElementById("demo").innerText = Y

我需要用这些标签替换所有这些标签

之前:->
.code。。代码..

之后:--->
。代码。。代码..


但这不起作用:

function myReplace(){
    var X = document.getElementById("demo").innerText;
    var Y = X.replace(/</script>/ig, '<\/script>');
    document.getElementById("demo").innerText = Y;
}
函数myReplace(){
var X=document.getElementById(“demo”).innerText;
变量Y=X.replace(//ig',);
document.getElementById(“demo”).innerText=Y;
}


为了更好地理解,这里有一个相关的

看起来您的表达式不起作用了。您的斜杠没有正确转义。试试这个

function myReplace(){
   var X = document.getElementById("demo").innerHTML;
   var Y = X.replace(/<\/script>/ig, "<\\\/script>");
   document.getElementById("demo").innerText = Y;
}
函数myReplace(){
var X=document.getElementById(“demo”).innerHTML;
变量Y=X.replace(//ig,“”);
document.getElementById(“demo”).innerText=Y;
}

我还发现了一个关于如何做到这一点以及为什么这样做的问题。它们甚至可以逃过符号,但我相信逃过正斜杠是最重要的。

//ig
不是有效的正则表达式。内部的
/
需要转义。顺便问一下,你为什么要这么做?您想拥有一堆未关闭的脚本标记吗?这不起作用,因为div(来自演示)中的脚本标记是标记,而不是文本。因此,你的内部文本将不包含它们。你想通过它实现什么?还有。。。你为什么要这么做?这看起来像是你在试图解决一个你不应该遇到的问题。不要重复别人已经发布的内容。但是,如果您出于某种原因确实需要它,那么您可能必须使用
innerHTML
获取值,并使用
textContent
innerText
进行设置。更新为包含全局。请看一看,此答案也解决了所问问题。你问了如何替换好答案,节省了我的时间:)