This document reflects the changes between releases for the Jakarta Regexp
package.
Version 1.5 (18 Mar 2007)
- Fixed Bug
36405:
Referencing an optional backreference returns null (VG)
- Implemented optimization: RE compiler omits branch instruction if only one
branch is present (VG)
- Fixed Bug
9153:
{m,n} implementation had exponential complexity (VG)
- Fixed Bug
27763:
RE incorrectly processed reluctant matchers (VG)
- Fixed Bug
38331:
RE compiler creates incorrect program if pattern results in large program
with offsets exceeding capacity of the short (VG)
- Fixed Bug
37275:
RE incorrectly processes nested {n,m} closures (ex: (A{1}){0,2}) (VG)
- Added accessor for REProgram.prefix (VG)
Version 1.4 (17 Aug 2005)
- Fixed Bug:
RE creates wrong character class when overlapping character ranges are
used (ex: [a-h0f-z]) (VG)
- Fixed Bug
30126:
Support negated character classes (\W, \D, \S) in custom character class (VG)
- Applied patches for Bug
27795:
Add optimization for regexps which start with ^ (BOL) (VG)
- Fixed Bug
25985:
In MATCH_MULTILINE mode $ does not match end of line (VG)
- Fixed Bug
2121:
'.' or '-' in bracket expression gives unexpected results (VG)
- Regexp is relicensed to
Apache License, Version 2.0 (VG)
- Fixed Bug
2525:
Leading zero-length string splitted by RE (VG)
- Applied patches for Bug
4137:
Regexp match gets different results on different platforms (VG)
- Applied patches for Bug
3303:
Unicode 3.0 character \\uFFFD (VG)
- Applied patches for Bug
3773:
Problem with parsing greedy match modifiers (VG)
- Applied patches for Bug
3273:
CharacterArrayCharacterIterator docs and implementation mismatch (VG)
- Fixed Bug
22928:
subst() with REPLACE_BACKREFERENCES cuts first 2 characters (VG)
Version 1.3 (2 Sep 2003)
- Fixed Bug
22804:
ArrayIndexOutOfBoundsException on negated classes (VG)
- New Feature: subst() can now process backreferences when flag
REPLACE_BACKREFERENCES is set. See API docs for details.
Patch provided by Tobias Schaefer. (VG)
- Applied patches for Bug
16592:
Syntax error: Too many bracketed closures (limit is 10) (VG)
- Fixed Bug
5212, aka
14954:
A bug caused by '-' in character class definition ('[...]') (VG)
- Fixed Bug
4057:
\w does not match underscore (VG)
- Fixed Bug
1030, aka
10893:
{n.m} notation work incorrect if n=0 (VG)
- Re-visited Bug
3879:
Expressions using {0,n} match 0 to n+1 times instead of 0 to n times.
Now, expression "[a-z]{0,3}" matches "123abcdefg123" resulting in ""
(empty string). (VG)
- Fixed Bug
306:
Why is the RE class not Serializable? (VG)
- Applied patches for Bug
3879:
Expressions using {0,n} match 0 to n+1 times instead of 0 to n times. (JSS)
- Applied patches for Bug
7288:
Bug in negative character ranges. (JSS)
- Applied patches for Bug
986:
Leading "\b" word boundary is ignored. (JSS)
- Applied patches for Bug
3877:
{n} and {n,m} not thread safe. (JSS)
- Applied patches for Bug
8467:
Number of paren pairs limited to 16 (JSS)
- Fixed RE.grep() documentation to reflect a String[] is returned
instead of an Object[].
-
New Feature: Clustering (i.e. non backref'd grouping)
- Rebuilt website with latest Jakarta-Site dependency
Version 1.2 (27 Nov 2000)
- Updated to Ant 1.2 (JSS)
- Documentation now built with Anakia (JSS)
-
Fixed bug
-
Fixed bug: StringIndexOutOfBoundsException if paren is empty
-
Fixed bug: Case independent flag does not work in prefix optimization code
-
New Feature: Added flag MATCH_SINGLELINE - newlines are matched by '.'
Version 1.1 (14 May 2000)
Contributions by Ales Novak:
- RECompiler.compile() - copy on return
- RE.matchNodes() - BOL and EOL cases
if RE.MATCH_MULTILINE is specified.
- Think of RETest.java which prints
MATCH!!!: ......
two times while in the older version only one time.
-
RE.java also contains an extension which allow to parse
InputStreams, Readers and char arrays in addition to Strings.
All needed modifications are only in the RE class.
Contributions by Jon S. Stevens:
- Fix in the build system for building on NT
- Documentation fixes / additions
Version 1.0
- Repackaging from original contribution. No major code changes.