summaryrefslogtreecommitdiffstats
path: root/Lib/sre_parse.py
Commit message (Collapse)AuthorAgeFilesLines
* bug #133283, #477728, #483789, #490573Fredrik Lundh2001-12-091-2/+2
| | | | | | | backed out of broken minimal repeat patch from July also fixed a couple of minor potential resource leaks in pattern_subx (Guido had already fixed the big one)
* Improved error msg when a symbolic group name is redefined. Added docsTim Peters2001-11-031-2/+4
| | | | | | and NEWS. Bugfix candidate? That's a dilemma for Anthony <wink>: /F did fix a longstanding bug here, but the fix can cause code to raise an exception that previously worked by accident.
* SF bug #476912: flag repeated use of the same groupname asFredrik Lundh2001-11-021-1/+3
| | | | the error it really is (and always has been)
* fixed #449964: sre.sub raises an exception if the template contains aFredrik Lundh2001-09-181-4/+4
| | | | | | \g<x> group reference followed by a character escape (also restructured a few things on the way to fixing #449000)
* Added docstrings by Neal Norwitz. This closes SF bug #450980.Fred Drake2001-09-041-0/+2
|
* sre 2.1b2 update:Fredrik Lundh2001-03-221-22/+41
| | | | | | - take locale into account for word boundary anchors (#410271) - restored 2.0's *? behaviour (#233283, #408936 and others) - speed up re.sub/re.subn
* detect attempts to repeat anchors (fixes bug #130748)Fredrik Lundh2001-02-181-0/+3
|
* - restored 1.5.2 compatibility (sorry, eric)Fredrik Lundh2001-02-181-22/+27
| | | | | - 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/+3
| | | | | | 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)
* String method conversion.Eric S. Raymond2001-02-091-18/+12
|
* bumped SRE version number to 2.1. cleaned up and added 1.5.2Fredrik Lundh2001-01-161-11/+17
| | | | compatibility patches.
* SRE: stricter pattern syntax checking (covers parts of bug #115900)Fredrik Lundh2001-01-141-7/+17
|
* SRE fixes for 2.1 alpha:Fredrik Lundh2001-01-141-9/+9
| | | | | | | | | | -- 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)
* -- properly reset groups in findall (bug #117612)Fredrik Lundh2000-10-281-2/+12
| | | | | | | | -- fixed negative lookbehind to work correctly at the beginning of the target string (bug #117242) -- improved syntax check; you can no longer refer to a group inside itself (bug #110866)
* Fixed too ambitious "nothing to repeat" check. Closes bug #114033.Fredrik Lundh2000-10-071-2/+0
|
* SRE didn't handle character category followed by hyphen inside aFredrik Lundh2000-10-071-0/+2
| | | | | character class. Fix provided by Andrew Kuchling. Closes bug #116251.
* Recompile pattern if (?x) flag was found inside the pattern during theFredrik Lundh2000-10-031-0/+5
| | | | first scan. Closes bug #115040.
* - don't hang if group id is followed by whitespace (closes bug #114660)Fredrik Lundh2000-09-241-1/+1
|
* -- tightened up parsing of octal numbersFredrik Lundh2000-09-021-8/+8
| | | | | -- improved the SRE test harness: don't use asserts, test a few more things (including more boundary conditions)
* SourceForge patch 101396, by an anonymous friend.Tim Peters2000-09-021-1/+1
| | | | "sre_parse.py missing '7' in DIGITS"
* closes bug #112468 (and all the other bugs that surfaced whenFredrik Lundh2000-08-311-28/+47
| | | | I fixed the a bug in the regression test harness...)
* -- reset marks if repeat_one tail doesn't matchFredrik Lundh2000-08-071-4/+4
| | | | | | | (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-1/+1
| | | | | -- added REPEAT_ONE operator -- added ANY_ALL operator (used to represent "(?s).")
* -- fixed width calculations for alternationsFredrik Lundh2000-08-011-5/+5
| | | | | | | -- 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-5/+1
| | | | | | | | | -- 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-76/+79
| | | | | | | | | | | + 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
* - fixed grouping error bugFredrik Lundh2000-07-031-2/+2
| | | | - changed "group" operator to "groupref"
* - added lookbehind support (?<=pattern), (?<!pattern).Fredrik Lundh2000-07-031-3/+9
| | | | | | | | | | | | | | | | | 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...
* - experimental: added two new attributes to the match object:Fredrik Lundh2000-07-021-0/+2
| | | | | | | | "lastgroup" is the name of the last matched capturing group, "lastindex" is the index of the same group. if no group was matched, both attributes are set to None. the (?P#) feature will be removed in the next relase.
* - actually enabled charset anchors in the engine (still notFredrik Lundh2000-07-021-0/+17
| | | | | | | | | | used by the code generator) - changed max repeat value in engine (to match earlier array fix) - added experimental "which part matched?" mechanism to sre; see http://hem.passagen.se/eff/2000_07_01_bot-archive.htm#416954 or python-dev for details.
* -- use charset bitmaps where appropriate. this gives a 5-10%Fredrik Lundh2000-07-021-4/+3
| | | | | | | | | speedup for some tests, including the python tokenizer. -- added support for an optional charset anchor to the engine (currently unused by the code generator). -- removed workaround for array module bug.
* - fixed "{ in any other context" bugFredrik Lundh2000-07-011-12/+15
| | | | - minor comment touchups in the C module
* today's SRE update:Fredrik Lundh2000-07-011-1/+1
| | | | | | | | -- changed 1.6 to 2.0 in the file headers -- fixed ISALNUM macro for the unicode locale. this solution isn't perfect, but the best I can do with Python's current unicode database.
* - fixed code generation error in multiline modeFredrik Lundh2000-06-301-5/+6
| | | | - fixed parser flag propagation (of all stupid bugs...)
* - reverted to "\x is binary byte"Fredrik Lundh2000-06-301-4/+5
| | | | - removed evil tabs from sre_parse and sre_compile
* the mad patcher strikes again:Fredrik Lundh2000-06-301-35/+31
| | | | | | | | | | | | | | | -- added pickling support (only works if sre is imported) -- fixed wordsize problems in engine (instead of casting literals down to the character size, cast characters up to the literal size (same as the code word size). this prevents false hits when you're matching a unicode pattern against an 8-bit string. (unfortunately, this broke another test, but I think the test should be changed in this case; more on that on python-dev) -- added sre.purge function (unofficial, clears the cache)
* - fixed lookahead assertions (#10, #11, #12)Fredrik Lundh2000-06-301-0/+19
| | | | - untabified sre_constants.py
* - added support for (?P=name)Fredrik Lundh2000-06-301-4/+17
| | | | (closes #3 and #7 from the status report)
* - pedantic: make sure "python -t" doesn't complain...Fredrik Lundh2000-06-301-418/+418
|
* - fixed split behaviour on empty matchesFredrik Lundh2000-06-301-26/+42
| | | | | | - fixed compiler problems when using locale/unicode flags - fixed group/octal code parsing in sub/subn templates
* - fixed another split problemFredrik Lundh2000-06-291-1/+0
| | | | | | | | | (those semantics are weird...) - got rid of $Id$'s (for the moment, at least). in other words, there should be no more "empty" checkins. - internal: some minor cleanups.
* - make sure group names are valid identifiersFredrik Lundh2000-06-291-5/+25
| | | | (closes the "SRE: symbolic reference" bug)
* - last patch broke parse_template; fixed by changing someFredrik Lundh2000-06-291-10/+10
| | | | | | | | | | | tests in sre_patch back to previous version - fixed return value from findall - renamed a bunch of functions inside _sre (way too many leading underscores...) </F>
* - removed "alpha only" licensing restrictionFredrik Lundh2000-06-291-46/+13
| | | | | - removed some hacks that worked around 1.6 alpha bugs - removed bogus test code from sre_parse
* towards 1.6b1Fredrik Lundh2000-06-291-35/+78
|
* Patch from /F: this patch brings the CVS version of SRE in sync with theAndrew M. Kuchling2000-06-091-118/+178
| | | | latest public snapshot.""
* Fredrik Lundh: new snapshot. Mostly reindented.Guido van Rossum2000-04-101-359/+364
| | | | | This one should work with unicode expressions, and compile a bit more silently.
* This patch looks large, but it just deletes the ^M characters andAndrew M. Kuchling2000-04-021-357/+357
| | | | untabifies the files. No actual code changes were made.
* Added Fredrik Lundh's sre module and its supporting cast.Guido van Rossum2000-03-311-0/+492
NOTE: THIS IS VERY ROUGH ALPHA CODE!