#!/usr/bin/perl -w use strict; use HTML::TokeParser::Simple; my $total = 0; my $p = HTML::TokeParser::Simple->new(*DATA); my $length_left = shift || 40; my $abstract = ""; while (my $t = $p->get_token) { $_ = $t->as_is; if ($t->is_text) { s/\s+/ /g; s/^(.{1,$length_left}\S*).*/$1/s; $length_left -= length; } $abstract .= $_; last unless $length_left > 0; } print $abstract, $/;