diff options
| author | Jeff Epler <jepler@gmail.com> | 2022-09-05 07:58:04 -0500 |
|---|---|---|
| committer | Damien George <damien@micropython.org> | 2022-09-06 17:08:18 +1000 |
| commit | e90b85cc98a24003f2d673bab2c255ab3dce66e7 (patch) | |
| tree | 9403eb1246766f0d081bb8a78a2515bc1f6f567a /tests | |
| parent | 719dbbf5639cdeff99bf629c45d66b18007e9958 (diff) | |
extmod/modure: Convert byte offsets to unicode indices when necessary.
And add a test.
Fixes issue #9202.
Signed-off-by: Jeff Epler <jepler@gmail.com>
Diffstat (limited to 'tests')
| -rw-r--r-- | tests/unicode/unicode_ure.py | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/tests/unicode/unicode_ure.py b/tests/unicode/unicode_ure.py new file mode 100644 index 000000000..5a5dc6005 --- /dev/null +++ b/tests/unicode/unicode_ure.py @@ -0,0 +1,32 @@ +# test match.span() for unicode strings + +try: + import ure as re +except ImportError: + try: + import re + except ImportError: + print("SKIP") + raise SystemExit + +try: + m = re.match(".", "a") + m.span +except AttributeError: + print("SKIP") + raise SystemExit + + +def print_spans(match): + print("----") + try: + i = 0 + while True: + print(match.span(i), match.start(i), match.end(i)) + i += 1 + except IndexError: + pass + + +m = re.match(r"([0-9]*)(([a-z]*)([0-9]*))", "1234\u2764567") +print_spans(m) |
