Question

I understand how to remove carriage returns from the ends of strings -- but I'm running into an issue in a Perl script of mine where a carriage return is found before the string.

For example, my script searches for strings which start with an exclamation mark, but a line that causes problems in my script is: ^C!

Is there any way to remove this?

Was it helpful?

Solution

^C is not the cat -v representation of carriage return, but of ETX, maybe that's the source of your confusion. s/\cC// will remove it.

Check with Devel::Peek::Dump from within Perl or uniquote from outside for other invisible characters.

OTHER TIPS

you could use a regexpr to clean that characters:

$line =~ s/^[^!]//;
Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top