summaryrefslogtreecommitdiff
path: root/tests/extmod/ure_sub_unmatched.py
diff options
context:
space:
mode:
authorDamien George <damien.p.george@gmail.com>2018-05-24 13:08:51 +1000
committerNoralf Trønnes <noralf@tronnes.org>2019-02-14 15:42:22 +0100
commitb9dc23c070bde772a941f803d8fac9cafc0e163c (patch)
tree94ad33340fa4f4819a63b63716acec78de993332 /tests/extmod/ure_sub_unmatched.py
parentcbeac094ef88b1f6a12cad7a3135f0530302ad20 (diff)
extmod/modure: Add ure.sub() function and method, and tests.
This feature is controlled at compile time by MICROPY_PY_URE_SUB, disabled by default. Thanks to @dmazzella for the original patch for this feature; see #3770.
Diffstat (limited to 'tests/extmod/ure_sub_unmatched.py')
-rw-r--r--tests/extmod/ure_sub_unmatched.py19
1 files changed, 19 insertions, 0 deletions
diff --git a/tests/extmod/ure_sub_unmatched.py b/tests/extmod/ure_sub_unmatched.py
new file mode 100644
index 000000000..4795b3196
--- /dev/null
+++ b/tests/extmod/ure_sub_unmatched.py
@@ -0,0 +1,19 @@
+# test re.sub with unmatched groups, behaviour changed in CPython 3.5
+
+try:
+ import ure as re
+except ImportError:
+ try:
+ import re
+ except ImportError:
+ print('SKIP')
+ raise SystemExit
+
+try:
+ re.sub
+except AttributeError:
+ print('SKIP')
+ raise SystemExit
+
+# first group matches, second optional group doesn't so is replaced with a blank
+print(re.sub(r'(a)(b)?', r'\2-\1', '1a2'))