我试图清理Frontpage生成的html文件,我需要删除大量标记属性,例如:
style="font-size: 10.0pt; font-family: Trebuchet MS; color: blue"
style="color: blue; text-decoration: underline; text-underline: single"
style="color: blue; text-decoration: underline; text-underline: single"
style="font-family: Trebuchet MS"
style="font-size:10.0pt;"
style="color: navy"
我可以用简单的方法删除一定数量的通配符。命令:
:%s/ style="........"//g
但有没有办法让这个。在该替换命令中可变长度,以便一个命令将删除整个文档中的每个样式属性?
PS - 我搜索过头版清洁工并发现了一些,但不清楚它们有多可靠,所以我自己编写脚本。尽管如此,可以接受建议。
答案 0 :(得分:12)
这应该消除HTML中的所有样式属性:
:%s/ style=".*"//g
编辑:Sam Brinck提出了一个很好的观点。我的代码仅基于您的示例。如果style="..."
属性后面还有其他属性,则此代码会过多地吞噬。更安全的替代方案可能是:
:%s/ style="[^"]*"//g
表示 - 删除{em>非双引号 style="
的{{1}}之后的所有字符,直到遇到下一个双引号。谢谢Sam!