sub split_by_colon { my $string=shift; my @parts; while (length $string) { push @parts,"" unless @parts; my $char=substr($string,0,1,""); unless ($char eq ":") { $parts[-1].=$char; } else { push @parts,""; } } return @parts; }