From: Serhiy Storchaka Date: Mon, 25 Feb 2019 16:28:53 +0000 (+0200) Subject: [3.7] bpo-28450: Fix and improve the documentation for unknown escapes in RE. (GH... X-Git-Tag: v3.7.3rc1~47 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=95fc8e687c487ecf97f4b1b98dfc0c05e3c9cbff;p=thirdparty%2FPython%2Fcpython.git [3.7] bpo-28450: Fix and improve the documentation for unknown escapes in RE. (GH-11920). (GH-12029) (cherry picked from commit a180b007d96fe68b32f11dec720fbd0cd5b6758a) --- diff --git a/Doc/library/re.rst b/Doc/library/re.rst index 39ba44eba1c1..dc3f428b8a19 100644 --- a/Doc/library/re.rst +++ b/Doc/library/re.rst @@ -570,7 +570,8 @@ accepted by the regular expression parser:: only inside character classes.) ``'\u'`` and ``'\U'`` escape sequences are only recognized in Unicode -patterns. In bytes patterns they are errors. +patterns. In bytes patterns they are errors. Unknown escapes of ASCII +letters are reserved for future use and treated as errors. Octal escapes are included in a limited form. If the first digit is a 0, or if there are three octal digits, it is considered an octal escape. Otherwise, it is @@ -844,7 +845,9 @@ form. *string* is returned unchanged. *repl* can be a string or a function; if it is a string, any backslash escapes in it are processed. That is, ``\n`` is converted to a single newline character, ``\r`` is converted to a carriage return, and - so forth. Unknown escapes such as ``\&`` are left alone. Backreferences, such + so forth. Unknown escapes of ASCII letters are reserved for future use and + treated as errors. Other unknown escapes such as ``\&`` are left alone. + Backreferences, such as ``\6``, are replaced with the substring matched by group 6 in the pattern. For example::