From dc2582f488b9f324b69936e6cb895fc8422e3f48 Mon Sep 17 00:00:00 2001 From: Dave Halter Date: Tue, 22 Jan 2019 09:33:46 +0100 Subject: [PATCH] Tokenizer: Simplify end of string regexes --- parso/python/tokenize.py | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/parso/python/tokenize.py b/parso/python/tokenize.py index da7560f..0309722 100644 --- a/parso/python/tokenize.py +++ b/parso/python/tokenize.py @@ -167,13 +167,13 @@ def _create_token_collection(version_info): FStringStart = group(*fstring_prefixes) # Tail end of ' string. - Single = r"[^'\\]*(?:\\.[^'\\]*)*'" + Single = r"(?:\\.|[^'\\])*'" # Tail end of " string. - Double = r'[^"\\]*(?:\\.[^"\\]*)*"' + Double = r'(?:\\.|[^"\\])*"' # Tail end of ''' string. - Single3 = r"[^'\\]*(?:(?:\\.|'(?!''))[^'\\]*)*'''" + Single3 = r"(?:\\.|'(?!'')|[^'\\])*'''" # Tail end of """ string. - Double3 = r'[^"\\]*(?:(?:\\.|"(?!""))[^"\\]*)*"""' + Double3 = r'(?:\\.|"(?!"")|[^"\\])*"""' Triple = group(StringPrefixWithF + "'''", StringPrefixWithF + '"""') # Because of leftmost-then-longest match semantics, be sure to put the