in reply to Perl Regex

I don't see what's wrong with the code you gave in the OP - it does output the three values you said you want:

The seven split is 200 The eight split is 300 The nine split is 444

If you want them in separate named variables, just do this inside your loop:

my $val1 = $7; my $val2 = $8; my $val3 = $9;

Update: Ah, it seems you wanted all 10 values of each record, and wondered why your output only showed the first 9. hdb has already found the reason: A missing backslash before the last pipe in the regex.