use warnings; use strict; use Data::Dumper; my $str = 'joe 0.0000E 000 9.0720E-001 d23 9.0208E-001'; my @words = split /\s+/, $str; print Dumper(\@words); __END__ $VAR1 = [ 'joe', '0.0000E', '000', '9.0720E-001', 'd23', '9.0208E-001' ];