#!/usr/bin/perl -w use strict; use HTML::TokeParser::Simple; my $parser = HTML::TokeParser::Simple->new(\*DATA); my $new_title = 'Some title'; my $html = ''; while (defined (my $token = $parser->get_token)) { if ($token->is_start_tag('title')) { $html .= $token->as_is . $new_title; $token = $parser->get_tag('/title'); # advance to last title tag; } $html .= $token->as_is; } print $html; __DATA__
This is the body