Javascript 用单个分隔符替换多个分隔符标记,并在分隔符之间尊重文本
我想在正文中用一个断点替换多个断点,并且应该尊重断点之间的文本。而且它不应该影响任何元素上的事件处理程序。 比如说,Javascript 用单个分隔符替换多个分隔符标记,并在分隔符之间尊重文本,javascript,jquery,html,dom,Javascript,Jquery,Html,Dom,我想在正文中用一个断点替换多个断点,并且应该尊重断点之间的文本。而且它不应该影响任何元素上的事件处理程序。 比如说, text1<br/><br/><br/>text2<br/><br/><p>text3</p>text4<br/><br/><br/>text5 text1text2text3text4
text1<br/><br/><br/>text2<br/><br/><p>text3</p>text4<br/><br/><br/>text5
text1
text2
text3text4
应改为
text1<br/>text2<br/><p>text3</p>text4</p><br/>text5
text1
text2
text3text4
text5
我在stackoverflow上发现了一些与此相关的问题,但我无法使这些问题适用于我的场景。我相信它不是重复的,所以发布它。试试这个
var oldText="text1<br/><br/><br/>text2<br/><br/><p>text3</p>text4<br/><br/><br/>text5";
var newText = oldText.replace(/(?:<br[^>]*>\s*){2,}/g, '<br>');
var oldText=“text1
text3text4
\s*){2,}/g,“
”);
编辑
根据你的需要
$("#clickableDiv" ).click(function() {
alert('clicked me');
});
$("p" ).click(function() {
alert('clicked me');
});
var bodyHTML = $('body').html();
console.log( "ready!" );
bodyHTML = bodyHTML.replace(/(?:<br[^>]*>\s*){2,}/g,"<br/>");
console.log(bodyHTML);
$('body').html(bodyHTML);
});
$(“#clickableDiv”)。单击(函数(){
警惕(“点击我”);
});
$(“p”)。单击(函数(){
警惕(“点击我”);
});
var bodyHTML=$('body').html();
console.log(“准备就绪!”);
bodyHTML=bodyHTML.replace(/(?:]*>\s*){2,}/g,“
”);
log(bodyHTML);
$('body').html(bodyHTML);
});
试试这个
var oldText="text1<br/><br/><br/>text2<br/><br/><p>text3</p>text4<br/><br/><br/>text5";
var newText = oldText.replace(/(?:<br[^>]*>\s*){2,}/g, '<br>');
var oldText=“text1
text3text4
\s*){2,}/g,“
”);
编辑
根据你的需要
$("#clickableDiv" ).click(function() {
alert('clicked me');
});
$("p" ).click(function() {
alert('clicked me');
});
var bodyHTML = $('body').html();
console.log( "ready!" );
bodyHTML = bodyHTML.replace(/(?:<br[^>]*>\s*){2,}/g,"<br/>");
console.log(bodyHTML);
$('body').html(bodyHTML);
});
$(“#clickableDiv”)。单击(函数(){
警惕(“点击我”);
});
$(“p”)。单击(函数(){
警惕(“点击我”);
});
var bodyHTML=$('body').html();
console.log(“准备就绪!”);
bodyHTML=bodyHTML.replace(/(?:]*>\s*){2,}/g,“
”);
log(bodyHTML);
$('body').html(bodyHTML);
});
试试看
$a = "text1<br/><br/><br/>text2<br/><br/><p>text3</p>text4<br/><br/><br/>text5";
$b = preg_replace("/(?:<br\/>)+/", "<br/>", $a);
// $b == "text1<br/>text2<br/><p>text3</p>text4<br/>text5"
$a=“text1
text3text4
,$a”);
//$b==“text1
text2
text3text4
text5”
试试看
$a = "text1<br/><br/><br/>text2<br/><br/><p>text3</p>text4<br/><br/><br/>text5";
$b = preg_replace("/(?:<br\/>)+/", "<br/>", $a);
// $b == "text1<br/>text2<br/><p>text3</p>text4<br/>text5"
$a=“text1
text3text4
,$a”);
//$b==“text1
text2
text3text4
text5”
您能告诉我们您尝试过但不适用于您的其他问题的哪些解决方案吗?您能告诉我们您尝试过但不适用于您的其他问题的哪些解决方案吗?我需要在整个文档中替换,您的解决方案会对事件处理程序产生影响吗?您是否尝试过此代码。或者提供完整的代码以便我们检查?它正在删除事件处理程序。仅当在元素上注册事件之前执行替换代码时,它才起作用。代码:我需要在整个文档中替换,您的解决方案会对事件处理程序产生影响吗?您是否尝试过此代码。或者提供完整的代码以便我们检查?它正在删除事件处理程序。仅当在元素上注册事件之前执行替换代码时,它才起作用。代码: