我看了很多找到解决方案但找不到的解决方案。我知道如何使用sed
删除所有标签,但我只需要删除那些空的HTML标签或者只包含标签或空格的HTML标签,并且还要显式删除标签。例如:使用sed从文件中删除空的HTML标记
<p></p> or <p> </p>
我用下面的命令删除所有的HTML标签,它工作正常,但我不想删除所有的标签。
sed -e 's/<[^>]*>//g' myfile.html
使用相同的命令here。请帮助我。
我看了很多找到解决方案但找不到的解决方案。我知道如何使用sed
删除所有标签,但我只需要删除那些空的HTML标签或者只包含标签或空格的HTML标签,并且还要显式删除标签。例如:使用sed从文件中删除空的HTML标记
<p></p> or <p> </p>
我用下面的命令删除所有的HTML标签,它工作正常,但我不想删除所有的标签。
sed -e 's/<[^>]*>//g' myfile.html
使用相同的命令here。请帮助我。
您可以使用下面的sed命令删除空标签。
sed 's/<[^\/][^<>]*> *<\/[^<>]*>//g' file
通过Perl中,
perl -pe 's/<([^<>]*)>\s*<\/\1>//g' file
sed -r 's/<([a-zA-Z0-9]+)>[ \s\t]*<\/\1>//g' file
在您更改要求后,这不起作用! :-)由于@Avinash提供了答案,我把它留在那里:-) – 2014-10-22 06:28:10
谢谢!还有一个问题,我标签并不总是像“>”那样关闭,有些标签写成这样的“”。这个命令是否仍然适用于这些标签? – Hammadzafar 2014-10-22 05:46:10
然后使用这个'sed -r'/ <[^\/][^<>] *> * <\/?[^<>] * \ /?> // g'file' – 2014-10-22 05:50:00
谢谢!它的工作原理 – Hammadzafar 2014-10-22 05:51:54