我需要在 html 文件中保留几个 html 标签,但删除所有其他标签。
脚本的逻辑是:
- if there is <li> or <ul> on the line, do nothing (=write same line to output)
- otherwise if there is html tag, remove it (=just write the content)
有人可以帮助我吗,这超出了我非常有限的 perl 技能。
您可以使用HTML::Restrict执行此操作
#!/usr/bin/env perl
use strict;
use warnings;
use HTML::Restrict;
my $hr = HTML::Restrict->new( rules => { li => [], ul => [] } );
my $html
= q[<body><b>hello</b> <img src="pic.jpg" alt="me" id="test" /><ul><li>one</li></ul></body>];
my $processed = $hr->process( $html );
print $processed;
结果输出是:
hello <ul><li>one</li></ul>