Javascript 需要使用Javasacript替换字符串(html内容)

Javascript 需要使用Javasacript替换字符串(html内容),javascript,string,replace,Javascript,String,Replace,在代码下面,我需要使用javascript将html“整个div”替换为“某些字符串” 这里用一些HTML内容替换字符串(要替换的整个div)和一些字符串 var replaceString = '<div style="page-break-after: always"><span style="display:none"> </span></div>'; var result = htmlContent.replace(replaceStrin

在代码下面,我需要使用javascript将html“整个div”替换为“某些字符串”

这里用一些HTML内容替换字符串(要替换的整个div)和一些字符串

var replaceString = '<div style="page-break-after: always"><span style="display:none"> </span></div>';
var result = htmlContent.replace(replaceString, "SOMESTRING");
var contentArr = result.split('SOMESTRING');
var replaceString='';
var result=htmlContent.replace(replaceString,“SOMESTRING”);
var contentArr=result.split('SOMESTRING');
replaceString
未被替换,可能是因为该html div字符串中存在双引号、冒号
replaceString
没有属性(ID,Class),但只有样式属性

请帮我解决这个问题

如何使用javascript将“整个div”替换为“某些字符串”


提前感谢

只是一个想法,试着将其包装在一个名为string的div中,并更改其内部html

HTML

<div id="string">
   <div style="page-break-after: always">
       <span style="display:none"></span>
   </div>
</div>

我没有弄清楚为什么不能用“SOMETHING”替换它,因为我不知道htmlContent变量包含什么。我的猜测是,CKEditor生成的内容可能包含一些您意想不到的空白。在这种情况下,您可能需要使用正则表达式,如:

var replaceString = /<div\s*style="page-break-after:\s*always">\s*<span\s*style="display:none">\s*<\/span>\s*<\/div>/;
// \s* represents 0 or more white spaces
var replaceString=/\s*\s*\s*/;
//\s*表示0个或多个空白
我在JSFiddle上做了一个例子。看看吧


htmlContent.replace(replaceString,“SOMESTRING”);但是“SOMESTRING”不包含在replaceString中??你期待什么?RegExp是用来处理正则表达式的,HTML不是正则的。谢谢你的快速回复。但我们没有选择将其包装在单独的div(id=“string”)中。它是由CKEditor生成的“div内容”(使用pagebreak选项时)。我需要使用pagebreak div content从CKEditor分割内容。
var replaceString = /<div\s*style="page-break-after:\s*always">\s*<span\s*style="display:none">\s*<\/span>\s*<\/div>/;
// \s* represents 0 or more white spaces