How to unescape a raw string?

Gary Herron gherron at islandtraining.com
Thu May 20 02:30:50 EDT 2010


On 05/19/2010 08:34 PM, python at bdurham.com wrote:
> How can I unescape a raw string so that it behaves as a non-raw string?
> For example, if I read the string "\n\t A B C\" D E F \xa0 \u1234" 
> from a text file, how can I convert (unescape?) this string so that 
> \n, \t, \", \x, and \u get converted to a newline, tab, double quote, 
> hex encoded and unicode encoded chars?
> I know I can do this explictly via a series of .replace() methods, but 
> certainly there must be a built-in way to do this on a generic basis?
> Thank you,
> Malcolm


That question makes no sense -- a string is a string is a string in 
Python.   The syntax you use to specify the string (for instance, raw or 
not, hex characters or not, or one or another quote choice) is 
irrelevant and completely forgotten once the string is internal.

No need to use replace, the \n is already stored as a newline, and the 
\t as a tab and so on.    Various methods of output may or may not 
convert those characters back into \n and \t and so on.  But that's a 
matter of output not internal storage.

So tell us what you're trying to accomplish -- and better also tell us 
Python2 or Python3?

Gary Herron

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/python-list/attachments/20100519/7fc44158/attachment.html>


More information about the Python-list mailing list