From 15ae75d660befe643ed42eb2707a557cea97256c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ricardo=20B=C3=A1nffy?= Date: Mon, 7 Oct 2019 21:54:35 +0100 Subject: [PATCH] bpo-38294: Add list of no-longer-escaped chars to re.escape documentation. (GH-16442) Prior to 3.7, re.escape escaped many characters that don't have special meaning in Python, but that use to require escaping in other tools and languages. This commit aims to make it clear which characters were, but are no longer escaped. --- Doc/library/re.rst | 8 +++++--- Doc/tools/susp-ignored.csv | 1 + .../2019-09-27-23-37-41.bpo-38294.go_jFf.rst | 1 + 3 files changed, 7 insertions(+), 3 deletions(-) create mode 100644 Misc/NEWS.d/next/Documentation/2019-09-27-23-37-41.bpo-38294.go_jFf.rst diff --git a/Doc/library/re.rst b/Doc/library/re.rst index df29c4d3909..7c950bfd5b1 100644 --- a/Doc/library/re.rst +++ b/Doc/library/re.rst @@ -931,8 +931,8 @@ form. This is useful if you want to match an arbitrary literal string that may have regular expression metacharacters in it. For example:: - >>> print(re.escape('python.exe')) - python\.exe + >>> print(re.escape('http://www.python.org')) + http://www\.python\.org >>> legal_chars = string.ascii_lowercase + string.digits + "!#$%&'*+-.^_`|~:" >>> print('[%s]+' % re.escape(legal_chars)) @@ -955,7 +955,9 @@ form. .. versionchanged:: 3.7 Only characters that can have special meaning in a regular expression - are escaped. + are escaped. As a result, ``'!'``, ``'"'``, ``'%'``, ``"'"``, ``','``, + ``'/'``, ``':'``, ``';'``, ``'<'``, ``'='``, ``'>'``, ``'@'``, and + ``"`"`` are no longer escaped. .. function:: purge() diff --git a/Doc/tools/susp-ignored.csv b/Doc/tools/susp-ignored.csv index a7408620aeb..740850cae84 100644 --- a/Doc/tools/susp-ignored.csv +++ b/Doc/tools/susp-ignored.csv @@ -356,3 +356,4 @@ whatsnew/changelog,,::,default::BytesWarning whatsnew/changelog,,::,default::DeprecationWarning library/importlib.metadata,,:main,"EntryPoint(name='wheel', value='wheel.cli:main', group='console_scripts')" library/importlib.metadata,,`,loading the metadata for packages for the indicated ``context``. +library/re,,`,"`" diff --git a/Misc/NEWS.d/next/Documentation/2019-09-27-23-37-41.bpo-38294.go_jFf.rst b/Misc/NEWS.d/next/Documentation/2019-09-27-23-37-41.bpo-38294.go_jFf.rst new file mode 100644 index 00000000000..0bde8c868c9 --- /dev/null +++ b/Misc/NEWS.d/next/Documentation/2019-09-27-23-37-41.bpo-38294.go_jFf.rst @@ -0,0 +1 @@ +Add list of no-longer-escaped chars to re.escape documentation \ No newline at end of file