使用sed从文件中删除空HTML标记

时间:2014-10-22 05:35:33

标签: html regex linux bash sed

我已经找了很多找到解决方案但找不到解决方案。我知道如何使用sed删除所有代码,但我只需删除那些空的HTML标记或只包含标签或空格的HTML标记,并且还要明确删除标记。例如:

<p></p>  or <p>    </p> 

我使用以下命令删除了所有HTML标记,它运行正常,但我不想删除所有标记。

sed -e 's/<[^>]*>//g' myfile.html

使用相同的命令here。请帮助我。

2 个答案:

答案 0 :(得分:1)

您可以使用以下sed命令仅删除空标记。

sed 's/<[^\/][^<>]*> *<\/[^<>]*>//g' file

通过Perl,

perl -pe 's/<([^<>]*)>\s*<\/\1>//g' file

答案 1 :(得分:1)

sed -r 's/<([a-zA-Z0-9]+)>[ \s\t]*<\/\1>//g' file