you're executing qx() in list context. the second argument to encode_entities is a character range, though.
++ because this just as obvious now as subtle enough to make me suspect that I wouldn't have spotted it easily in the first place. Indeed I don't like qx and try to avoid it if possible. Here, even if only working on a given OS, I don't see why one should rely on an external cat utility to do something that perl can handle perfectly fine itself: we would want a cheap idiom for slurping a file, and one can be provided by File::Slurp which is also known to be more efficient than the builtins. OTOH if not wanting to use an external module, I (would) do:
print encode_entities do { open my $fh, '<', 'two-lines-with-one-slash-each.txt' or die "D'Oh! $!\n"; local $/; <$fh>; };
If I wanted to stay even cheaper, I'd use @ARGV magic:
print encode_entities do { local (@ARGV,$/)='two-lines-with-one-slash- +each.txt'; <> };
In reply to Re^2: HTML::Entities - Unmatched [ in regex
by blazar
in thread HTML::Entities - Unmatched [ in regex
by andreas1234567
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |