$option_line = join ' ', @ARGV; #reconstitute my @pairs = $option_line =~ m/(\w+:\s+\w+)/g; # grab option pairs my %option; for $pair (@pairs) { # now split my ($name,$value) = split ":\s+", $pair, 2; # save each pair in hash $option{$name} = $value; }