use warnings; use strict; use Data::Printer; my $str='0.740234|0.758789|0.748047|0.749023|0.748047|0.754883|0.743164|0.748047|0.780273|0.739258|0.765625|0.761719|0.760742|||||0.75293|0.742188'; my @str_data = split/\|/,$str; p @str_data; #### [ [0] 0.740234, [1] 0.758789, [2] 0.748047, [3] 0.749023, [4] 0.748047, [5] 0.754883, [6] 0.743164, [7] 0.748047, [8] 0.780273, [9] 0.739258, [10] 0.765625, [11] 0.761719, [12] 0.760742, [13] "", [14] "", [15] "", [16] "", [17] 0.75293, [18] 0.742188 ]