| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373 |
- 2005-06-14 Raja R Harinath <[email protected]>
- Fix #74753.
- * Match.cs (Match) [zero-argument variant]: Make private.
- * GroupCollection (Item) [string variant]: Don't look for the
- group number in an empty match.
- 2005-06-10 Raja R Harinath <[email protected]>
- * interpreter.cs (Interpreter.GenerateMatch): Avoid allocating two
- intermediate arrays to build the final result.
- (Interpreter.GetGroupInfo, Interpreter.PopulateGroup): New helper
- functions.
- * CaptureCollection.cs (list): Change from ArrayList to list.
- (SetValue): New internal helper, used by Interpreter.PopulateGroup.
- (Enumerator): Remove helper class.
- (IEnumerator.GetEnumerator): Just use list.GetEnumerator.
- * GroupCollection.cs: Likewise.
- * Group.cs (Group): Move responsibility of populating 'Captures'
- to Interpreter.PopulateGroup.
- * Match.cs (Match): Move responsibility of populating 'Groups' to
- Interpreter.GenerateMatch.
- 2005-05-25 Raja R Harinath <[email protected]>
- * replace.cs (ReplacementEvaluator.Compile): Rewrite to avoid
- creating several intermediate strings. Simplify internal
- intermediate representation.
- (ReplacementEvaluator.EvaluateAppend): New. Version of Evaluate
- that builds the result directly on a passed-in StringBuilder.
- (ReplacementEvaluator.Evaluate): Just a wrapper around
- EvaluateAppend.
- * regex.cs (MatchAppendEvaluator): New internal delegate.
- (Regex.Replace): Use MatchAppendEvaluator.
- (Regex.Adapter): New class used to adapt a MatchEvaluator to a
- MatchAppendEvaluator.
- 2005-05-24 Raja R Harinath <[email protected]>
- * replace.cs (ReplacementEvaluator.CompileTerm): Fix group
- returned by $+.
- 2005-05-20 Ben Maurer <[email protected]>
- * regex.cs: Some memory allocation optimizations.
- 2005-05-20 Raja R Harinath <[email protected]>
- Fix #74735.
- * replace.cs (ReplacementEvaluator.Compile): Allow CompileTerm to
- fail and yet have advanced the pointer. Append the scanned-over
- portion to the "literal" being built.
- (ReplacementEvaluator.CompileTerm): Don't throw any exceptions.
- If a term cannot be recognized, just return null.
- * compiler.cs (InterpreterFactory.GroupCount): Fix. The 0'th
- index corresponds to Opcode.Info.
- * parser.cs (Parser.Unescape): If the string doesn't contain any
- '\' character, don't allocate a new string.
- * replace.cs (ReplacementEvalutator.Term.AppendResult): Rename
- from GetResult. Append to a passed-in StringBuilder rather than
- return a string.
- (ReplacementEvaluator.Evaluate): Update.
-
- * Capture.cs, Group.cs, Match.cs: New files split out of ...
- * match.cs: ... this. Remove.
- 2005-02-27 Gonzalo Paniagua Javier <[email protected]>
- * parser.cs: stuff inside {} might not be a quantifier. Fixes
- bug #69193.
- 2005-01-10 Gonzalo Paniagua Javier <[email protected]>
- * quicksearch.cs: handle IgnoreCase when getting the shift distance.
- Fixes bug #69065. Patch by [email protected].
- 2005-01-08 Miguel de Icaza <[email protected]>
- * syntax.cs: Applied patch from [email protected] to fix bug
- #71077.
- * parser.cs: Turns out that \digit sequences are octal sequences
- (no leading zero is needed); And the three octal digit rule
- applies to the leading zero as well.
- This fixes the Unescape method.
- 2004-11-29 Gonzalo Paniagua Javier <[email protected]>
- * regex.cs: use NextMatch to move on to the next match. Fixes bug
- #57274.
- 2004-11-09 Atsushi Enomoto <[email protected]>
- * parser.cs : cast.
- 2004-11-08 Ben Maurer <[email protected]>
- * replace.cs, parser.cs: Use stringbuilder for allocation sanity.
- 2004-10-21 Joerg Rosenkranz <[email protected]>
- * regex.cs: Fixed a bug introduced with the last patch which
- prevented any replacements when a postive count is given.
- This also happens in all overloads without count parameter.
- 2004-10-18 Gonzalo Paniagua Javier <[email protected]>
- * regex.cs: in Replace, when count is negative, replacement continues
- to the end of the string.
- Fixes bug #68398. Patch by Jon Larimer.
- 2004-06-10 Gert Driesen <[email protected]>
- * RegexRunner.cs: fixed case mismatch of methods
- 2004-06-10 Gert Driesen <[email protected]>
- * RegexRunner.cs: marked TODO, added missing protected internal
- fields, throw NotImplementedException in all methods
- 2004-06-10 Gert Driesen <[email protected]>
- * RegexRunnerFactory.cs: removed comment, no longer throw exception
- from ctor
- * regex.cs: fixed public API signature by renaming protected
- internal fields and adding destructor, added MonoTODO attribute to
- fields and method that are not yet implemented, changed not
- implemented methods to throw NotImplementedException instead of
- Exception, fixed names of field that are serialized
- 2004-06-06 Jambunathan K <[email protected]>
-
- * parser.cs: Fixed issues with Regex.Unescape() identified as part of
- debugging bug #58256. The original problem reported was about
- inconsistency between the way we treat replacement patterns and the
- way microsoft treats the replacement patterns in Regex.Replace(). MS
- implementation is buggy and doesn't honour escape sequences in the
- replacement patterns, even though the SDK claims otherwise.
-
- 2004-06-01 Gonzalo Paniagua Javier <[email protected]>
- * syntax.cs: re-applied my patch from 2004-05-27 plus a fix which is
- emitting a Category.All if both a category and its negated value are
- present.
- 2004-06-01 Gonzalo Paniagua Javier <[email protected]>
- * syntax.cs: reverting my previous patch. It causes bigger problems.
- 2004-05-27 Gonzalo Paniagua Javier <[email protected]>
- * category.cs: added LastValue field to mark the end of enum Category.
- * syntax.cs: in CharacterClass, use Category.LastValue to get the size
- of the array needed. Use a BitArray instead of bool[].
- In AddCategory(), don't set the opposite category as false. Fixes
- bug #59150. All tests pass.
- 2004-05-25 Jackson Harper <[email protected]>
- * parser.cs: Allow creating a regular expression using {,n} as the
- specified. The min bounds is set to -1, I am not completely sure
- if that is what it is supposed to be but MS does not set it to 0
- based on testing. Patch by [email protected]. Fixes bug #56761.
- 2004-05-12 Dick Porter <[email protected]>
- * regex.cs:
- * quicksearch.cs:
- * RegexRunnerFactory.cs:
- * RegexRunner.cs: More public API difference fixes.
- * GroupCollection.cs:
- * MatchCollection.cs:
- * CaptureCollection.cs: Moved GroupCollection, MatchCollection and
- CaptureCollection so that they no longer inherit from the
- non-standard RegexCollectionBase class. Fixes the API difference.
- 2004-04-19 Gonzalo Paniagua Javier <[email protected]>
- * arch.cs:
- * compiler.cs:
- * interpreter.cs:
- * parser.cs:
- * syntax.cs:
- Patch by Eric Durand Tremblay.
- 1) Capture inner group when named.
- 2) Resolved parse error caused by not capturing inner group
- 3) Resolved incorrect capture group
- 4) Now, not capturing anything when unnamed ( correct behavior)
- 2004-04-19 Gonzalo Paniagua Javier <[email protected]>
- * arch.cs:
- * compiler.cs:
- * interpreter.cs:
- * parser.cs:
- * syntax.cs: converted to unix line endings.
- 2004-03-30 Lluis Sanchez Gual <[email protected]>
- * collections.cs: In the indexer, return an empty group if the requested
- group is not found.
- * match.cs: Added default constructor for Group.
-
- 2004-03-24 Gonzalo Paniagua Javier <[email protected]>
- * parser.cs: fixed group numbering.
- 2004-03-22 Jackson Harper <[email protected]>
- * parser.cs: Use the group number as the name in mapping. Patch by
- Gert Driesen.
- * regex.cs: Fix off by one error. Patch by Gert Driesen.
- 2004-03-17 Francois Beauchemin <[email protected]>
- * syntax.cs, interpreter.cs, quicksearch.cs, regex.cs, compiler.cs :
- Revised support for RigthToLeft.
- quicksearch has now an reverse option.
- This fixes bug #54537
-
- * regex.cs, compiler.cs :
- Some code to support CILCompiler.
- * regex.cs :
- Added some undocumented of MS.
-
- 2004-03-16 Gonzalo Paniagua Javier <[email protected]>
- * parser.cs: allow a @"\0" escape sequence. Fixes bug #54797.
- 2004-02-01 Miguel de Icaza <[email protected]>
- * syntax.cs, interval.cs: Applied patch from Marco Cravairo
- through Francois Beauchemin who reviewed on the mailing list.
- This fixes bug #45976
- 2004-01-16 Gonzalo Paniagua Javier <[email protected]>
- * parser.cs: an opening brace without a
- quantifier do not cause a parse error. Fixes bug #52924.
- 2004-01-07 Lluis Sanchez Gual <[email protected]>
- * regex.cs: In Split(), if the last match is at the end of the string,
- an empty string must be added to the array of results.
- 2003-12-15 Sanjay Gupta <[email protected]>
- * match.cs: Check for null value before Substring method call.
- Fixes bug #52034.
- 2003-11-21 Juraj Skripsky <[email protected]>
- * quicksearch.cs: Create and use hashtable only for "long" search
- strings.
- (Search): Use simple scan for a single-character search strings.
-
- (GetChar): Simplify case sensitivity handling.
- 2003-11-27 Gonzalo Paniagua Javier <[email protected]>
- * interpreter.cs: when evaluating a degenerate match, restore the
- RepeatContext if fail. Fixes bug #42529.
- 2003-11-22 Jackson Harper <[email protected]>
- * regex.cs: Add CultureInvariant flag to RegexOptions.
-
- 2003-11-20 Juraj Skripsky <[email protected]>
- * quicksearch.cs: Use a hashtable instead of an array for the
- shift table to improve the memory usage.
- 2003-11-19 Gonzalo Paniagua Javier <[email protected]>
- * regex.cs:
- (Split): include capture groups in the results, if any. Fixes bug
- #51146.
- 2003-07-09 Gonzalo Paniagua Javier <[email protected]>
- * regex.cs: patch from Eric Lindvall <[email protected]> that fixes bug
- #44830.
- 2003-03-05 Miguel de Icaza <[email protected]>
- * category.cs (CategoryUtils.CategoryFromName): Use StartsWith
- ("Is") instead of a substring for (0,2) which was throwing an
- exception causing Category.None to be returned
- 2003-01-17 Gonzalo Paniagua Javier <[email protected]>
- * collections.cs: fixed bug #30091.
- 2002-12-20 Gonzalo Paniagua Javier <[email protected]>
- * regex.cs: fixed little mistake (closes #35860).
- 2002-11-12 Jackson Harper <[email protected]>
- * arch.cs compiler.cs regex.cs: Added mapping attribute to MachineFactories
- 2002-11-06 Gonzalo Paniagua Javier <[email protected]>
- * parser.cs: detect illegal \ at end of pattern. Fixes 31334.
- 2002-10-25 Gonzalo Paniagua Javier <[email protected]>
- * parser.cs: applied fix from Tim Haynes ([email protected]) to
- solve bug #32807. Also modified GetMapping to return the same as MS.
- 2002-08-28 Juli Mallett <[email protected]>
- * arch.cs, compiler.cs: Give the interpreter machine a property
- for the retrieval of the group count.
- * regex.cs: Use the new GroupCount property of the factory to
- initialise the current group count, and restructure code to compile
- the pattern only the first time it is needed (essentially backing
- out the previous revision of regex.cs, to use the new code.)
- 2002-08-14 Cesar Octavio Lopez Nataren <[email protected]>
- * regex.cs: Added the ctr for ISerializable implementation and
- implemented the GetObjectData function.
- 2002-07-30 Juli Mallett <[email protected]>
- * regex.cs: Fixed bug where the expression would not be
- re-evaluated for grouping purposes when factory caches were
- used, resulting in no groups being recognised after one call
- with a given pattern and no change in options.
- 2002-05-13 Dan Lewis <[email protected]>
- * regex.cs: Fixed bug in split.
- 2002-05-08 Dan Lewis <[email protected]>
- * interpreter.cs: Moved to an array-based stack representation
- for faster captures.
- * match.cs, collections.cs: Decoupled capture representation from
- interpreter internals.
- * cache.cs: Changed Key type from struct to class for speed.
- 2002-04-06 Dan Lewis <[email protected]>
- * cache.cs: Object methods should be overridden with "override".
- 2002-04-04 Dan Lewis <[email protected]>
- * RegexRunner.cs, RegexRunnerFactory.cs: MS support classes. Stubs
- added for completeness.
- * regex.cs, match.cs, collections.cs: Serializable attribute.
- 2002-04-04 Dan Lewis <[email protected]>
- * regex.cs: Added static Matches and IsMatch methods.
- 2002-04-03 Dan Lewis <[email protected]>
- * ChangeLog: Added changelog.
- * cache.cs: Fixed bug in MRUList.Evict.
|