我正在尝试从wysiwyg生成的输出中清除服务器端的一串文本。虽然我可以在客户端修复它,但最好也在服务器端解决这个问题。
var string = "<p>firstline</p><p>secondline</p><p>thirdline</p><p>iframe</p><p>a</p><p>df</p><p>dsf </p><p><br></p><p>sd</p><p>f</p><p>sdf</p><p><br></p>"
var x = string.replace("<p><br></p>", "");
https://jsfiddle.net/8c0yh9r7/
代码应该但不会消除段落中的中断
为什么会这样?
答案 0 :(得分:3)
使用带有全局标志的正则表达式,例如:
string.replace(/<p><br><\/p>/g, "");
https://jsfiddle.net/Lu2r3820/1/
使用字符串时,只会替换第一个匹配项。
请参阅replace()
文档
答案 1 :(得分:2)
并没有摆脱段落中的中断
是的,它确实......但只有一次。您的代码中有多个包含换行符的段落。
如果您想多次替换它,则需要使用正则表达式并使用g
将其标记为全局。
var x = string.replace(/<p><br><\/p>/g, "");
答案 2 :(得分:1)
它确实替换了,但只是第一次出现。如果之后再运行,则可以看到第二次出现消失。
var x = x.replace("<p><br></p>", "");
请参阅此内容以替换所有出现的内容。 How to replace all occurrences of a string in JavaScript?