New submission from Raman <s_raman...@yahoo.com>:
Sample code below import re regex = r'DELETE\s*(?P<table_alias>[a-zA-z_0-9]*)\s*FROM\s*(?P<table_name>[a-zA-z_0-9]+)\s*([a-zA-Z0-9_]*)\s*(?P<where_statement>WHERE){0,1}(\s.)*?' test_str = 'DELETE FROM my_table1 t_ WHERE id in (1,2,3)' matches = re.finditer(regex, test_str, re.MULTILINE) print([m.groupdict() for m in matches]) Below is the expected output. [{'table_alias': '', 'table_name': 'my_table1', 'where_statement': 'WHERE'}] But in Win Server 2012 R2, the output is [{'table_alias': '', 'table_name': 'mytable1', 'where_statement': None}] Using 3.7 in Win Server 2012 R2 also the output is not as expected. But in Win 10 and other linux variants, expected output is obtained. ---------- components: Regular Expressions messages: 322916 nosy: ezio.melotti, mrabarnett, ram, serhiy.storchaka priority: normal severity: normal status: open title: Regex not evalauated correctly type: behavior versions: Python 3.6, Python 3.7 _______________________________________ Python tracker <rep...@bugs.python.org> <https://bugs.python.org/issue34315> _______________________________________ _______________________________________________ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com