use HTML::TokeParser;
my $p = HTML::TokeParser->new("index.html") ||
die "Can't open: $!";
while (my $token = $p->get_token) {
if ($token->[0] eq 'td') {
my $txt = $p->get_trimmed_text;
if ($txt eq "the text before what you're looking for") {
$token = $p->get_token("td");
my $txt = $p->get_trimmed_text;
# $txt will be the text you're looking for
}
}
}