Domanda

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?

È stato utile?

Soluzione

^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.

Altri suggerimenti

you could use a regexpr to clean that characters:

$line =~ s/^[^!]//;
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top