How to unescape a raw string?

Chris Rebert clp2 at rebertia.com
Wed May 19 23:42:55 EDT 2010


On Wed, May 19, 2010 at 8:34 PM,  <python at bdurham.com> wrote:
> How can I unescape a raw string so that it behaves as a non-raw string?

That's not what the notion of raw strings in Python technically means,
but anyway...

> For example, if I read the string "\n\t A B C\" D E F \xa0 \u1234"

I'll assume you're quoting the file contents itself verbatim here,
rather than a Python string literal (which would require doubling up
on the backslashes).

> 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?

new_string = your_string.decode('string_escape')

Cheers,
Chris
--
http://blog.rebertia.com



More information about the Python-list mailing list