删除内联样式的正则表达式

时间:2018-08-04 18:15:52

标签: css regex

我有以下正则表达式用于删除内联样式:

map

我有2个问题。示例:

>>> list(map(lambda x: list(map(lambda y: "%.2f" % y, x)), my_list))
[['1.00', '1.00'], ['1.00', '1.00']]

在这种情况下,一切都很好,但是我需要选择P之前的空格

问题2,如果同一行中有更多html标记,则该表达式无效,并删除了“文本非常重要”。示例:

(style=").*"

我只需要选择SPACE + style =“ ...”(然后将其删除) 有什么帮助吗?谢谢。

2 个答案:

答案 0 :(得分:0)

HTML是正则表达式无法理解的结构化数据,这意味着您碰到的恰恰是您遇到的问题:对于任何非平凡的问题,格式中允许使用的多种变体使其非常{{3} }使用字符串操作技术进行解析。

DOM方法旨在处理此类数据,因此请改用它们。以下代码应该是不言自明的:

document.querySelectorAll('*').forEach(function(el) { 
    el.removeAttribute("style")
});

答案 1 :(得分:-1)

此正则表达式用于删除所有属性,解决了我的问题。 (我只有1个属性)。

((?<=<p))[^>]*(?=>)