in reply to Removing Javascript
gets fooled by the first </script> tag.#!/usr/bin/perl -w use strict; use English; use warnings; use HTML::Parser; { package JavascriptIsBad; use base 'HTML::Parser'; my $result; my $skipping = 0; sub start { my($self, $tagname, $attr, $attrseq, $origtext) = @_; if (lc($tagname) eq 'script') { $skipping = 1; } $result .= $origtext unless $skipping; } sub end { my($self, $tagname, $origtext) = @_; $result .= $origtext unless $skipping; if (lc($tagname) eq 'script' and $skipping) { $skipping = 0; } } sub text { my($self, $origtext, $is_cdata) = @_; return if $skipping; $result .= $origtext; return; } sub result { $result } } my $p = JavascriptIsBad->new; $p->parse(<<EOF); <html> <head> <script language="Javascript"> document.write("Don't forget your </script> tag! It's important!"); </script> </head> <body> This is just some text. </body> </html> EOF print 'Result: ', $p->result, "\n";
| -- | |||||||
|
| ||||||
| ...Nexcerpt...Connecting People With Expertise | |||||||
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re: Re: Removing Javascript
by Mur (Pilgrim) on Jan 02, 2003 at 20:57 UTC | |
by Jenda (Abbot) on Jan 02, 2003 at 23:44 UTC | |
by osama (Scribe) on Jan 03, 2003 at 20:52 UTC | |
|
Re: Re: Removing Javascript
by boo_radley (Parson) on Jan 02, 2003 at 20:56 UTC | |
by Mur (Pilgrim) on Jan 02, 2003 at 21:00 UTC |