summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRaymond Hettinger <python@rcn.com>2004-09-26 18:56:44 (GMT)
committerRaymond Hettinger <python@rcn.com>2004-09-26 18:56:44 (GMT)
commit55593c3ef530ea01b1cfb1f7c81ee34fd994d0ef (patch)
treed24fff5d96d61f609f591863e7a65af74849dc9f
parent4d9559a47e2c39aabf1ea9ae30be892841f3e73b (diff)
downloadcpython-55593c3ef530ea01b1cfb1f7c81ee34fd994d0ef.zip
cpython-55593c3ef530ea01b1cfb1f7c81ee34fd994d0ef.tar.gz
cpython-55593c3ef530ea01b1cfb1f7c81ee34fd994d0ef.tar.bz2
Make the regex pattern easier to read, understand, and modify
by factoring out the common prefix (the delimiter).
-rw-r--r--Lib/string.py10
1 files changed, 6 insertions, 4 deletions
diff --git a/Lib/string.py b/Lib/string.py
index 623eb0e..7371c91 100644
--- a/Lib/string.py
+++ b/Lib/string.py
@@ -101,10 +101,12 @@ class _multimap:
class _TemplateMetaclass(type):
pattern = r"""
- (?P<escaped>%(delim)s{2}) | # Escape sequence of two delimiters
- %(delim)s(?P<named>%(id)s) | # delimiter and a Python identifier
- %(delim)s{(?P<braced>%(id)s)} | # delimiter and a braced identifier
- (?P<invalid>%(delim)s) # Other ill-formed delimiter exprs
+ %(delim)s(?:
+ (?P<escaped>%(delim)s) | # Escape sequence of two delimiters
+ (?P<named>%(id)s) | # delimiter and a Python identifier
+ {(?P<braced>%(id)s)} | # delimiter and a braced identifier
+ (?P<invalid>) # Other ill-formed delimiter exprs
+ )
"""
def __init__(cls, name, bases, dct):