New submission from Isis Binder: I was working on some SPOJ exercises when the regex module hit me with an error related to '*' being used inside the character set operator.
I looked in the module docs but it says: Special characters lose their special meaning inside sets. For example, [(+*)] will match any of the literal characters '(', '+', '*', or ')'. Traceback attached. Offending code (inside IDLE): import re a = '73479*5152' re.match(r'(\d+)([+-*])(\d+)', a).groups() NOTE: if I write r'(\d+)([*])(\d+)', r'(\d+)([*+-])(\d+)' or r'(\d+)([+*-])(\d+)' it works. Shouldn't it simply work as described in the docs or should the docs be updated with an entry about proper character ordering in the character class? ---------- components: Regular Expressions files: traceback.txt messages: 201351 nosy: Isis.Binder, ezio.melotti, mrabarnett priority: normal severity: normal status: open title: Regex with set of characters and groups raises error type: crash versions: Python 3.3 Added file: http://bugs.python.org/file32372/traceback.txt _______________________________________ Python tracker <rep...@bugs.python.org> <http://bugs.python.org/issue19408> _______________________________________ _______________________________________________ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com