Nick Coghlan wrote: > On Fri, Jul 9, 2010 at 7:54 AM, MRAB <python at mrabarnett.plus.com> wrote: >> You should be able to replace: >> >> import re >> >> with: >> >> import regex as re >> >> and still have everything work the same, ie it's backwards compatible >> with re. > > That's not what I'm asking. I'm asking what happens if you take an > existing Python installation's re module, move it aside, and drop > regex in its place as "re.py". > > Doing that and then running Python's own test suite as well as the > test suites of major Python applications and frameworks like Twisted, > Zope and Django would provide solid evidence that the new version > really *is* backwards compatible, rather than that it is *meant* to be > backwards compatible. > I had to recompile the .pyd to change its internal name from "regex" to "re", but apart from that it passed Python's own test suite except for where I expected it to fail: 1. Some of the inline flags are scoped; for example, putting "(?i)" at the end of a regex will now have no effect because it's no longer a global, all-or-nothing, flag. 2. The .sub method will treat unmatched groups in an expansion as empty strings. The re module raises an exception in such cases, which means that users currently need a workaround.
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4