【发布时间】:2021-12-02 06:12:49
【问题描述】:
我有一些 HTML 作为字符串
var str= "<p><br/></p>"
如何使用 JS 从这个字符串中去除 p 标签。 这是我迄今为止尝试过的:
str.replace(/<p[^>]*>(?:\s| )*<\/p>/, "") // o/p: <p><br></p>'
str.replace("/<p[^>]*><\\/p[^>]*>/", "")// o/p: <p><br></p>'
str.replace(/<p><br><\/p>/g, "")// o/p: <p><br></p>'
它们都返回与上面相同的 str,预期的 o/p 是:
str 应该是""
我在这里做错了什么?
谢谢
【问题讨论】:
-
你能阻止违规字符串被添加到 HTML 中,这样你就不需要尝试删除它了吗?
-
我正在使用 React Quill 组件,并且该组件添加了此值,我不确定是否可以在不触摸组件的情况下阻止。此时我最好的方法是删除空标签和
标签 -
也许你应该屏蔽所有箭头
\<和\> -
但这不是一个 empty
标签。它有一个
标签。 ?? -
我的意思是为我们定义什么应该不被删除和什么应该被删除一样重要。输入和预期输出的一个示例几乎没有告诉我们任何信息——尤其是当有矛盾的文本解释支持它是一个 empty 标记(它不是)时。请更好地定义问题。
标签: javascript html regex