fix quadratic backtracking in debug f-string quote detection (#5165)
diff --git a/CHANGES.md b/CHANGES.md
index a92a0ed..a68f06d 100644
--- a/CHANGES.md
+++ b/CHANGES.md
@@ -54,6 +54,8 @@
<!-- Changes that improve Black's performance. -->
- Improve performance on strings containing many consecutive backslashes (#5163)
+- Improve performance when merging implicitly concatenated f-strings whose expressions
+ contain long string literals (#5165)
### Output
diff --git a/src/black/trans.py b/src/black/trans.py
index 8563089..26f9c96 100644
--- a/src/black/trans.py
+++ b/src/black/trans.py
@@ -641,7 +641,7 @@ def make_naked(string: str, string_prefix: str) -> str:
for span in iter_fexpr_spans(string)
]
debug_expressions_contain_visible_quotes = any(
- re.search(r".*[\'\"].*(?<![!:=])={1}(?!=)(?![^\s:])", expression)
+ re.search(r"[\'\"].*(?<![!:=])={1}(?!=)(?![^\s:])", expression)
for expression in f_expressions
)
if not debug_expressions_contain_visible_quotes: