view fixes/fix_unicode_in_strings.py @ 1020:6c1d10d2fc52 trunk

Also allow stripping of unsafe script tags (Python 3.4 parses the second example as a tag whose name is script&xyz).
author hodgestar
date Sun, 16 Feb 2014 18:25:17 +0000
parents d010a80ebb4f
children
line wrap: on
line source
"""Fixer that changes expressions inside strings literals from u"..." to "...".

"""

import re
from lib2to3 import fixer_base

_literal_re = re.compile(r"(.+?)\b[uU]([rR]?[\'\"])")

class FixUnicodeInStrings(fixer_base.BaseFix):

    PATTERN = "STRING"

    def transform(self, node, results):
        new = node.clone()
        new.value = _literal_re.sub(r"\1\2", new.value)
        return new
Copyright (C) 2012-2017 Edgewall Software