sub parseinline { my $stag=0; my $etag=0; while ($_ =~ //g){$stag++} while ($_ =~ /<\/b>/g){$etag++} if ($stag != $etag){print "Mismatch between start and end element for '' in $ARGV[0]."} } #### use XML::parser; ... ... XML::parser->parsetag(); #### sub parseinline { my $stag=0; my $etag=0; while ($_ =~ /<$_[0]>/g){$stag++} while ($_ =~ /<\/$_[0]>/g){$etag++} if ($stag != $etag){print "Mismatch between start and end element for '$_[0]' in $ARGV[0]."} }