in reply to HTML::TokeParser Select List into Array

This uses HTML::TokeParser::Simple which makes the syntax a bit easier

#!/bin/perl5 use strict; use warnings; use HTML::TokeParser::Simple; my $select; { local $/; $select = <DATA>; } my $tp = HTML::TokeParser::Simple->new(\$select) or die "Couldn't parse string: $!"; my ($start, @states); while (my $t = $tp->get_token) { $start++, next if $t->is_start_tag('select'); next unless $start; last if $t->is_end_tag('/select'); push @states, $t->get_attr('value') if $t->is_start_tag('option'); } print "$_\n" for @states; __DATA__ <select name=market onChange="setCookie(this.name,this.selectedIndex)" +> <option value=Chicago>Chicago <option value=Wisconsin>Wisconsin <option value=Indiana>Indiana </select>