in reply to Split - what am i doing wrong?

Try:
foreach $field (split(/\Q$delim\E/, $line)) {

Update: See perldoc -q quote

Cheers,
Darren :)

PS. The word is "delimiter" ;)