现有的一个js正则,有这样的作用,将text中的<hr
class=\"system-pagebreak\" /> 替换成
<div>-------</div>。script脚本如下:
<script>
var alltext = \'<b>123</b><hr
class=\"system-pagebreak\" /><b>456</b>\';
var rep = \'<div>-------</div>\';
alltext =
alltext.replace(/<hr\\s+class=(\\\"|\')system-pagebreak(\\\"|\')\\s*\\/*>/i,
rep);
</script>但是目前遇到问题了,text中的hr,有另外的属性
var alltext = \'<b>123</b><hr
class=\"system-pagebreak\"
title=\"任意字符,不是写死的\"
/><b>456</b>\';这时原来的正则不起作用了:/<hr\\s+class=(\\\"|\')system-pagebreak(\\\"|\')\\s*\\/*>/i
class=\"system-pagebreak\" /> 替换成
<div>-------</div>。script脚本如下:
<script>
var alltext = \'<b>123</b><hr
class=\"system-pagebreak\" /><b>456</b>\';
var rep = \'<div>-------</div>\';
alltext =
alltext.replace(/<hr\\s+class=(\\\"|\')system-pagebreak(\\\"|\')\\s*\\/*>/i,
rep);
</script>但是目前遇到问题了,text中的hr,有另外的属性
var alltext = \'<b>123</b><hr
class=\"system-pagebreak\"
title=\"任意字符,不是写死的\"
/><b>456</b>\';这时原来的正则不起作用了:/<hr\\s+class=(\\\"|\')system-pagebreak(\\\"|\')\\s*\\/*>/i
+'<hr a=1 class=\'system-pagebreak\' b=2/><b>456</b>\'';
var rep = '\'<div>-------</div>\'';
var pat = /<hr[^>]*class\s*=\s*(\"|\')system-pagebreak\1[^>]*>/ig
alert(alltext.replace(pat,rep));
我的结果:
'<b>123</b>'<div>-------</div>'<b>456</b>'
麻烦了......
现有的一个js正则,有这样的作用,将text中的<hr
class=\\\\\\\\\\\\\\\"system-pagebreak\\\\\\\\\\\\\\\" />
替换成
<div>-------</div>。script脚本如下:
<script>
var alltext = \\\\\\\\\\\\\\\'<b>123</b><hr
class=\\\\\\\\\\\\\\\"system-pagebreak\\\\\\\\\\\\\\\"
/><b>456</b>\\\\\\\\\\\\\\\';
var rep = \\\\\\\\\\\\\\\'<div>-------</div>\\\\\\\\\\\\\\\';
alltext =
alltext.replace(/<hr\\\\\\\\\\\\\\\\s+class=(\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"|\\\\\\\\\\\\\\\')system-pagebreak(\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"|\\\\\\\\\\\\\\\')\\\\\\\\\\\\\\\\s*\\\\\\\\\\\\\\\\/*>/i,
rep);
</script>但是目前遇到问题了,text中的hr,有另外的属性
var alltext = \\\\\\\\\\\\\\\'<b>123</b><hr
class=\\\\\\\\\\\\\\\"system-pagebreak\\\\\\\\\\\\\\\"
title=\\\\\\\\\\\\\\\"任意字符,不是写死的\\\\\\\\\\\\\\\"
/><b>456</b>\\\\\\\\\\\\\\\';这时原来的正则不起作用了:/<hr\\\\\\\\\\\\\\\\s+class=(\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"|\\\\\\\\\\\\\\\')system-pagebreak(\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"|\\\\\\\\\\\\\\\')\\\\\\\\\\\\\\\\s*\\\\\\\\\\\\\\\\/*>/i
var alltext = '\\\\\\\\\\\\\\\'<b>123</b><hr '
+'class=\\\\\\\\\\\\\\\"system-pagebreak\\\\\\\\\\\\\\\" '
+'title=\\\\\\\\\\\\\\\" 任意字符,不是写死的\\\\\\\\\\\\\\\" '
+'/><b>456</b>\\\\\\\\\\\\\\\'';
var rep = '\'<div>-------</div>\'';
var pat = /<hr[^>]*class\s*=\s*([\\\\]+"|')system-pagebreak\1[^>]*>/ig
alert(alltext.replace(pat,rep));