> From: Lukas Renggli <[hidden email]>
> Date: November 4, 2009 10:46:35 PM GMT+01:00
> To: [hidden email] > Subject: Re: [Pharo-project] Fwd: nice bug with regex
> Reply-To: [hidden email] >
> I committed VB-Regex-lr.34 to the PharoInbox that fixes this issue.
> In fact, this is a completely new port of VB-Regex with numerous
> bug-fixes and enhancements. The bug you found was fixed in version
> 1.1c in December 2004. The version 1.1 we used up to now was from
> October 1999.
> The detailed log of changes from Vassily you can see below.
> Name: VB-Regex-lr.34
> Author: lr
> Time: 4 November 2009, 10:40:27 pm
> UUID: 9254d5aa-3e22-4e3b-83aa-2d633ff05570
> Ancestors: VB-Regex-StephaneDucasse.33
> VERSION 1.2.3 (November 2007)
> 1. Regexs with ^ or $ applied to copy empty strings caused infinite
> loops, e.g. ('' copyWithRegex: '^.*$' matchesReplacedWith: 'foo').
> Applied a similar correction to that from version 1.1c, to
> 2. Extended RxParser testing to run each test for
> #copy:translatingMatchesUsing: as well as #search:.
> 3. Corrected #testSuite test that a dot does not match a null, which
> was passing by luck with Smalltalk code in a literal array.
> 4. Added test to end of test suite for fix 1 above.
> VERSION 1.2.2 (November 2006)
> There was no way to specify a backslash in a character set. Now [\\]
> is accepted.
> VERSION 1.2.1 (August 2006)
> 1. Support for returning all ranges (startIndex to: stopIndex)
> matching a regex - #allRangesOfRegexMatches:, #matchingRangesIn:
> 2. Added hint to usage documentation on how to get more information
> about matches when enumerating
> 3. Syntax description of dot corrected: matches anything but NUL
> since 1.1a
> VERSION 1.2 (May 2006)
> Fixed case-insensitive search for character sets.
> VERSION 1.1c (December 2004)
> Fixed the issue with #matchesOnStream:do: which caused infinite loops
> for matches
> that matched empty strings.
> VERSION 1.1b (November 2001)
> Changes valueNowOrOnUnwindDo: to ensure:, plus incorporates some
> earlier fixes.
> VERSION 1.1a (May 2001)
> 1. Support for keeping track of multiple subexpressions.
> 2. Dot (.) matches anything but NUL character, as it should per
> POSIX spec.
> 3. Some bug fixes.
> 2009/11/4 Stéphane Ducasse <[hidden email]>:
>>> l := '1ère partie\nmilieu\nfin'.
>>> '.*' asRegex matchesIn l.
>> -> infinite and freezing loop.
>> Pharo-project mailing list
>> [hidden email] >> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project >>
> Lukas Renggli
> http://www.lukas-renggli.ch >
> Pharo-project mailing list
> [hidden email] > http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project