home *** CD-ROM | disk | FTP | other *** search
/ PC Welt 2006 November (DVD) / PCWELT_11_2006.ISO / casper / filesystem.squashfs / usr / share / doc / libhtml-parser-perl / examples / htext < prev    next >
Encoding:
Text File  |  2000-01-22  |  548 b   |  30 lines

  1. #!/usr/bin/perl -w
  2.  
  3. # Extract all plain text from an HTML file
  4.  
  5. use strict;
  6. use HTML::Parser 3.00 ();
  7.  
  8. my %inside;
  9.  
  10. sub tag
  11. {
  12.    my($tag, $num) = @_;
  13.    $inside{$tag} += $num;
  14.    print " ";  # not for all tags
  15. }
  16.  
  17. sub text
  18. {
  19.     return if $inside{script} || $inside{style};
  20.     print $_[0];
  21. }
  22.  
  23. HTML::Parser->new(api_version => 3,
  24.           handlers    => [start => [\&tag, "tagname, '+1'"],
  25.                   end   => [\&tag, "tagname, '-1'"],
  26.                   text  => [\&text, "dtext"],
  27.                  ],
  28.           marked_sections => 1,
  29.     )->parse_file(shift) || die "Can't open file: $!\n";;
  30.