So more or like like this:?
Closer, but then this no longer filters comments that contain the sep character (e.g. add "# This is a comment, too" to my example above)...
Update: I realize this is less likely when sep=>'|', but my question is basically whether there's a "generic" way to filter lines. For example, I could load the file into memory and do s/^\s*#.*(?:\n|\z)//mg, but that would break any CSV data that contains embedded newlines that happen to match this pattern. In other words, with Text::CSV_XS, filter is only applied after parsing fields like "#foo" or \#foo to #foo, and I'm wondering if there's a hook into the parser before that takes place?
Update 2: In the CB, you suggested in => \do { local $/; <DATA> =~ s/^\s*#.*(?:\n|\z)//mgr }, which gets closer as well, though it breaks this test case. Just for completeness, here are all the test cases so far combined into one data set:
# This is a comment not,a,comment # This is a comment, too not,a,comment "#not",a,comment \#also,not,"a comment" foo,"bar # Not a comment, either! quz",baz
In reply to Re^10: Perl custom sort for Portuguese Lanaguage (updated x2)
by haukex
in thread Perl custom sort for Portuguese Lanaguage
by Galdor
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |