javascript - 将 HTML 剥离为允许的标签

标签 javascript node.js regex

除了列表中给出的标签外,我想去除所有 HTML 标签(但不是内容)。

我想用 Node 来做这件事。

以下正则表达式可以匹配标签<[a|br].+?>|<\/[a]>但是我怎样才能继续删除除了匹配的标签之外的所有标签呢?

最佳答案

仅替换 abr :

  1. 没有 |成套[] .套装[a|br]是:a , | , br .请改用非捕获组。
  2. .+?应该是 .*?替换 <a><br> .
  3. 集合[a]可能只是 a .

试试这个:

/<(?:a|br).*?>|<\/a>/g

https://regex101.com/r/KWJi01/2

替换除a 之外的所有标签和 br :

使用这个正则表达式:

/<(?:(?!\/?a|br).*?)>/g

https://regex101.com/r/KWJi01/3

关于javascript - 将 HTML 剥离为允许的标签,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43700037/

相关文章:

node.js - NodeJS 类导入

java - 如何用字符串编译不同的模式?

java - 正则表达式匹配反斜杠后跟引号

javascript - 当await表达式是concat()的参数时,为什么async/await有不同的输出?

javascript - 在使用新数据的 jQuery POST 请求后重新呈现 EJS 模板

javascript - 为什么 `finally` 中的返回覆盖 `try` ?

node.js - 在 Wintersmith 中访问额外的 Markdown 元数据参数

regex - 如何在 bash 中匹配零个或多个模式实例?

JavaScript : Alert Box dismissed when tabs switched

javascript - 向 Ember.TextField 添加名称属性?