special chars as scalar inside regex




I've got a problem I think there may be a straight-forward solution to that I just don't know. I have a program that reads a variable-length input file. And the field delimiter of that file is given as an argument. The problem is something like pipe "|" might show up as the delimiter. So is there a way to quote/protect that in the split() function without it being interpreted as a regex special character?

Something like:

../myprog.pl "|"

myprog.pl:
---------
my $delimiter = $ARGV[0];
my @fields = split(/$delimiter/, $line);


This is a very simplified example. Hope that makes sense.
.



Relevant Pages

  • Re: special chars as scalar inside regex
    ... Rob Benton wrote: ... I have a program that reads a variable-length input file. ... And the field delimiter of that file is given as an argument. ... So is there a way to quote/protect that in the splitfunction without it being interpreted as a regex special character? ...
    (perl.beginners)
  • Re: special chars as scalar inside regex
    ... Rob Benton wrote: ... I have a program that reads a variable-length input file. ... And the field delimiter of that file is given as an argument. ... So is there a way to quote/protect that in the splitfunction without it being interpreted as a regex special character? ...
    (perl.beginners)