in reply to Re: count total number of occurrence in all files
in thread Reaped: count total number of occurrence in all files

Another issue is that single quote prevent interpolation. ... You want to use double quotes instead.

I don't understand the point you're making here. Using double-quote interpolation produces the string "\ts", which doesn't seem to be what the OPer wants to split on at all and which earns you an "Unrecognized escape ..." warning into the bargain. Indeed, in your example code, you use the  '\t\s' (a single tab character followed by any single whitespace character) as the split pattern. (Personally, I prefer to use  qr// or  m// instead. Potayto, potahto.)

c:\@Work\Perl\monks>perl -wMstrict -MData::Dump -le "my $line = qq{foo\t bar\t\tbaz\t\nboff}; print qq{>>$line<<}; dd $line; ;; my @fields = split '\t\s', $line; dd \@fields; " >>foo bar baz boff<< "foo\t bar\t\tbaz\t\nboff" ["foo", "bar", "baz", "boff"] c:\@Work\Perl\monks>perl -wMstrict -MData::Dump -le "my $line = qq{foo\t bar\t\tbaz\t\nboff}; print qq{>>$line<<}; dd $line; ;; my @fields = split qq{\t\s}, $line; dd \@fields; " Unrecognized escape \s passed through at -e line 1. >>foo bar baz boff<< "foo\t bar\t\tbaz\t\nboff" ["foo\t bar\t\tbaz\t\nboff"]


Give a man a fish:  <%-{-{-{-<

Replies are listed 'Best First'.
Re^3: count total number of occurrence in all files
by Eily (Monsignor) on May 09, 2016 at 15:35 UTC

    You're right, \s doesn't make sense outside a regex, I read it as a single space character, which it actually is not. The fact that I split on '\t\s' is just a copy/paste gone wrong because I did mean to write "\t\s", which would have been incorrect anyway. I'll edit my post, thanks!