in reply to Delete de " from my file

my $newdeli = do {~s/\"//g; <FILE>}

What does that do?

  1. it applies a substitution to $_ (probably unset currently) and does a bitwise negation on its result (with the ~ operator)
  2. then it reads a line from the filehandle FILE
  3. then it assigns the result from the read operation to $newdeli.

That's not what you want. Probably you want to read from the filehandle FILE in slurp mode, store the stuff read, and apply a substitution on that:

my $newdeli = do { local $/; <FILE>} $newdeli =~ s/\"//g;

or shortcut

(my $newdeli = do { local $/; <FILE>}) =~ s/\"//g;

But then, there are modules for reading csv files. Have a look at Text::CSV.

--shmem

_($_=" "x(1<<5)."?\n".q·/)Oo.  G°\        /
                              /\_¯/(q    /
----------------------------  \__(m.====·.(_("always off the crowd"))."·
");sub _{s./.($e="'Itrs `mnsgdq Gdbj O`qkdq")=~y/"-y/#-z/;$e.e && print}