# A simple script to extract HTML/XML tag options use strict; use warnings; foreach my $file (@ARGV) { open (FILE, "< $file") or die "No such file: $file"; my @d = ; close FILE; my $t = join(' ', @d); $t =~ m/\<(\?)? ([a-zA-Z0-9]+)(?:\s+) (?{ print "<$^N>\n"; }) ( ((?>[a-zA-Z0-9]+)=(?>(".*?")|([^ "<>]+))) (?{ my ($opt, $val) = split(\/=\/, $^N); print "\t$opt\t\t$val\n"; }) \s*?)* ([ ]*\/)?> (.*?) (<\/\2>)? \1 /isx; }