summaryrefslogtreecommitdiffstats
path: root/Lib/sre_compile.py
Commit message (Collapse)AuthorAgeFilesLines
* [2.7] bpo-30363: Backport warnings in the re module. (#1577)Serhiy Storchaka2017-05-181-1/+1
| | | | | | Running Python with the -3 option now warns about regular expression syntax that is invalid or has different semantic in Python 3 or will change the behavior in future Python versions.
* Issue #12728: Different Unicode characters having the same uppercase butSerhiy Storchaka2014-11-101-11/+76
| | | | different lowercase are now matched in case-insensitive regular expressions.
* Issue #17381: Fixed ranges handling in case-insensitive regular expressions.Serhiy Storchaka2014-10-311-15/+49
|
* Backported the optimization of compiling charsets in regular expressionsSerhiy Storchaka2014-10-311-128/+103
| | | | (issue #19329). This is needed to apply the patch from issue #17381.
* Issue #19405: Fixed outdated comments in the _sre module.Serhiy Storchaka2013-10-271-4/+4
|
* Issue #19327: Fixed the working of regular expressions with too big charset.Serhiy Storchaka2013-10-241-1/+1
|
* Issue #18050: Fixed an incompatibility of the re module with Python 2.7.3Serhiy Storchaka2013-09-201-1/+0
| | | | and older binaries.
* Issue #2537: Remove breaked check which prevented valid regular expressions.Serhiy Storchaka2013-08-191-2/+0
| | | | | | Patch by Meador Inge. See also issue #18647.
* Issue #18647: Temporary disable the "nothing to repeat" check to make ↵Serhiy Storchaka2013-08-041-2/+2
| | | | buildbots happy.
* Issue #13169: The maximal repetition number in a regular expression has beenSerhiy Storchaka2013-02-161-0/+1
| | | | | increased from 65534 to 2147483647 (on 32-bit platform) or 4294967294 (on 64-bit).
* remove set compat cruftBenjamin Peterson2008-10-141-6/+0
|
* Issue2564: Prevent a hang in "import test.autotest", which runs the entire testAmaury Forgeot d'Arc2008-04-081-2/+1
| | | | | | | suite as a side-effect of importing the module. - in test_capi, a thread tried to import other modules - re.compile() imported sre_parse again on every call.
* Issue #1700, reported by Nguyen Quan Son, fix by Fredruk Lundh:Guido van Rossum2008-01-031-1/+1
| | | | | Regular Expression inline flags not handled correctly for some unicode characters. (Forward port from 2.5.2.)
* Fix typo in commentNeal Norwitz2007-07-061-1/+1
|
* [Bug #1177831] Fix generation of code for GROUPREF_EXISTS. Thanks to Andre ↵Andrew M. Kuchling2005-06-021-1/+1
| | | | Malo for the fix.
* Complete the previous effort to factor out constant expressionsRaymond Hettinger2005-02-281-4/+15
| | | | and improve the speed of the if/elif/else blocks.
* make sure to check for this limit even if we're running with -OFredrik Lundh2004-10-151-2/+4
|
* Fix _sre.CODESIZE on 64-bit machines in UCS-4 mode. Fixes #931848.Martin v. Löwis2004-05-071-3/+5
| | | | Backported to 2.3.
* Revert 1.51 booleans so that sre will still run on old pythons.Raymond Hettinger2004-03-271-6/+6
|
* Remove unnecessary test. (Thanks Skip)Raymond Hettinger2004-03-261-6/+0
|
* Simple optimizations:Raymond Hettinger2004-03-261-47/+69
| | | | | | | | | * pre-build a single identity function for the fixup function * pre-build membership tests in dictionaries instead of in-line tuples * assign len() to a local variable * assign append() methods to a local variable * use xrange() instead of range() * replace "x<<1" with "x+x"
* Use True/False instead of 0/1 for character classes.Martin v. Löwis2004-03-251-6/+6
|
* Implemented non-recursive SRE matching.Gustavo Niemeyer2003-10-171-0/+13
|
* Addendum to #764548: restore 2.1 compatibility.Just van Rossum2003-07-021-2/+8
|
* Fix and test for bug #764548:Just van Rossum2003-07-021-5/+5
| | | | | | Use isinstance() instead of comparing types directly, to enable subclasses of str and unicode to be used as patterns. Blessed by /F.
* Fully support 32-bit codes. Enable BIGCHARSET in UCS-4 builds.Martin v. Löwis2003-04-191-23/+46
|
* SF patch #720991 by Gary Herron:Guido van Rossum2003-04-141-2/+5
| | | | | | | A small fix for bug #545855 and Greg Chapman's addition of op code SRE_OP_MIN_REPEAT_ONE for eliminating recursion on simple uses of pattern '*?' on a long string.
* Fix from SF patch #633359 by Greg Chapman for SF bug #610299:Guido van Rossum2003-02-241-1/+1
| | | | | | | | | The problem is in sre_compile.py: the call to _compile_charset near the end of _compile_info forgets to pass in the flags, so that the info charset is not compiled with re.U. (The info charset is used when searching to find the first character at which a match could start; it is not generated for patterns beginning with a repeat like '\w{1}'.)
* Disable big charsets in UCS-4 builds. Works around #599377.Martin v. Löwis2002-09-261-0/+3
| | | | Will backport to 2.2
* made the code match the comments (1.5.2 compatibility)Fredrik Lundh2002-06-271-3/+3
|
* Replace boolean test with is None.Raymond Hettinger2002-06-021-1/+1
|
* Added docstrings by Neal Norwitz. This closes SF bug #450980.Fred Drake2001-09-041-0/+2
|
* Whitespace normalization, plus:Tim Peters2001-07-211-1/+1
| | | | | | + test_quopri.py relied on significant trailing spaces. Fixed. + test_dircache.py (still) doesn't work on Windows (directory mtime on Windows doesn't work like it does on Unix).
* Patch #442512: put block indices in the right byte order on bigendian systems.Martin v. Löwis2001-07-191-2/+5
|
* added martin's BIGCHARSET patch to SRE 2.1.1. martin reports 2xFredrik Lundh2001-07-021-10/+71
| | | | speedups for certain unicode character ranges.
* sre 2.1b2 update:Fredrik Lundh2001-03-221-7/+9
| | | | | | - take locale into account for word boundary anchors (#410271) - restored 2.0's *? behaviour (#233283, #408936 and others) - speed up re.sub/re.subn
* - restored 1.5.2 compatibility (sorry, eric)Fredrik Lundh2001-02-181-2/+0
| | | | | - removed __all__ cruft from internal modules (sorry, skip) - don't assume ASCII for string escapes (sorry, per)
* bunch more __all__ listsSkip Montanaro2001-02-151-0/+2
| | | | | | also modified check_all function to suppress all warnings since they aren't relevant to what this test is doing (allows quiet checking of regsub, for instance)
* from the really-stupid-bug department: uppercase literals should matchFredrik Lundh2001-01-151-1/+2
| | | | | | | uppercase strings also when the IGNORECASE flag is set (bug #128899) (also added test cases for recently fixed bugs to the regression suite -- or in other words, check in re_tests.py too...)
* added "magic" number to the _sre module, to avoid weird errors causedFredrik Lundh2001-01-151-0/+2
| | | | by compiler/engine mismatches
* SRE fixes for 2.1 alpha:Fredrik Lundh2001-01-141-3/+3
| | | | | | | | | | -- added some more docstrings -- fixed typo in scanner class (#125531) -- the multiline flag (?m) should't affect the \Z operator (#127259) -- fixed non-greedy backtracking bug (#123769, #127259) -- added sre.DEBUG flag (currently dumps the parsed pattern structure) -- fixed a couple of glitches in groupdict (the #126587 memory leak had already been fixed by AMK)
* Fixed too ambitious "nothing to repeat" check. Closes bug #114033.Fredrik Lundh2000-10-071-1/+1
|
* -- reset marks if repeat_one tail doesn't matchFredrik Lundh2000-08-071-103/+153
| | | | | | | (this should fix Sjoerd's xmllib problem) -- added skip field to INFO header -- changed compiler to generate charset INFO header -- changed trace messages to support post-mortem analysis
* final 0.9.8 updates:Fredrik Lundh2000-08-011-25/+26
| | | | | -- added REPEAT_ONE operator -- added ANY_ALL operator (used to represent "(?s).")
* -- fixed width calculations for alternationsFredrik Lundh2000-08-011-2/+3
| | | | | | | -- fixed literal check in branch operator (this broke test_tokenize, as reported by Mark Favas) -- added REPEAT_ONE operator (still not enabled, though) -- added some debugging stuff (maxlevel)
* SRE 0.9.8: passes the entire test suiteFredrik Lundh2000-08-011-35/+29
| | | | | | | | | -- reverted REPEAT operator to use "repeat context" strategy (from 0.8.X), but done right this time. -- got rid of backtracking stack; use nested SRE_MATCH calls instead (should probably put it back again in 0.9.9 ;-) -- properly reset state in scanner mode -- don't use aggressive inlining by default
* -- SRE 0.9.6 sync. this includes:Fredrik Lundh2000-07-231-2/+12
| | | | | | | | | | | + added "regs" attribute + fixed "pos" and "endpos" attributes + reset "lastindex" and "lastgroup" in scanner methods + removed (?P#id) syntax; the "lastindex" and "lastgroup" attributes are now always set + removed string module dependencies in sre_parse + better debugging support in sre_parse + various tweaks to build under 1.5.2
* maintenance release:Fredrik Lundh2000-07-051-1/+3
| | | | | | | | - reorganized some code to get rid of -Wall and -W4 warnings - fixed default argument handling for sub/subn/split methods (reported by Peter Schneider-Kamp).
* - fixed grouping error bugFredrik Lundh2000-07-031-6/+13
| | | | - changed "group" operator to "groupref"
* - added lookbehind support (?<=pattern), (?<!pattern).Fredrik Lundh2000-07-031-12/+17
| | | | | | | | | | | | | | | | | the pattern must have a fixed width. - got rid of array-module dependencies; the match pro- gram is now stored inside the pattern object, rather than in an extra string buffer. - cleaned up a various of potential leaks, api abuses, and other minors in the engine module. - use mal's new isalnum macro, rather than my own work- around. - untabified test_sre.py. seems like I removed a couple of trailing spaces in the process...