This is a little snippet to show off the new power of HTML::TokeParser:Simple. The docs are a bit messy, though, so I'll have to clean them up.
You have an HTML document full of stuff like this (note the inconsitent capitalization, quotes, etc.):
<body alink=#0000ff BGCOLOR=#ffffff CLASS='none'> <P>This is <EM>ugly</em> HTML</P>
You have to parse the HTML and while you're at it, you'd rather have it look like this:
<body class="foobar"> <p>This is <em>ugly</em> HTML</p>
use HTML::TokeParser::Simple 2.1; my $parser = HTML::TokeParser::Simple->new( $ugly_html ); while (my $token = $parser->get_token) { rewrite_body_tag($token) if $token->is_start_tag('body'); $token->rewrite_tag; print $token->as_is; } sub rewrite_body_tag { # what could be easier? my $token = shift; $token ->delete_attr('bgcolor') ->delete_attr('alink') ->set_attr('class','foobar'); }
In reply to Clean up ugly HTML by Ovid
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |