JS:如何使用正则表达式从 HTML 字符串中删除样式标签及其内容?

i.b*_*rod 5 javascript regex

我需要从 html 字符串中多次删除样式标签的全部内容。我无法使用 DOM 解析器。

我怎样才能在 JavaScript 中做到这一点?

小智 11

对于 2020 年来到这里的人来说,这对我来说很有效。

string.replace(/(<style[\w\W]+style>)/g, "")
Run Code Online (Sandbox Code Playgroud)

正如伯吉在OP评论中提到的那样,如果没有更好的选择,这应该被视为最后的手段。RegEx 并不是处理 HTML 的最佳方法。

  • 小心这一点。如果您有多个“&lt;style&gt;”标签,它将清除第一个标签和最后一个标签之间的所有内容。 (2认同)

Kae*_*icz 6

    var string = "<style>someHTMLStuff</style> non style <html>stuff</html>"

    var s = string.replace(/<style.*?<\/style>/g, '')
    
    console.log(s);
Run Code Online (Sandbox Code Playgroud)

我假设您希望删除整个样式标签,而不仅仅是其内容

编辑:引用