use URI; use URI::QueryParam; while ( ) { chomp; my $uri = URI->new($_); next unless $uri->scheme eq 'http'; next unless $uri->query_param; print $uri, $/; for my $param ( $uri->query_param ) { printf(" %s --> %s\n", $param, join(", ", $uri->query_param($param)) ); } } __DATA__ http://google.com/?var1=aaaa&var2=aa https://google.com/?var1=aaaa&var2=aa http://google.com/ ftp://google.com/ mailto:moo@gmail.com http://google.com/?var=one&var=two&var=three