+2005-01-08 Miguel de Icaza <miguel@ximian.com>
+
+ * syntax.cs: Applied patch from mei@work.email.ne.jp 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 <gonzalo@ximian.com>
* regex.cs: use NextMatch to move on to the next match. Fixes bug
return false;\r
\r
case Category.Any:\r
- return c != '\n';\r
+ return c != '\n';
\r
case Category.AnySingleline:\r
return true;\r
// character codes
case '0':
+ //
+ // Turns out that octal values can be specified
+ // without a leading zero. But also the limit
+ // of three character should include this first
+ // one.
+ //
+ ptr--;
int prevptr = ptr;
int result = ParseOctal (pattern, ref ptr);
if (result == -1 && prevptr == ptr)
for (int i = 0; i < pos_cats.Length; ++ i) {
if (pos_cats[i]) {
if (neg_cats [i])
- cmp.EmitCategory (Category.Any, negate, reverse);
+ cmp.EmitCategory (Category.AnySingleline, negate, reverse);
else
cmp.EmitCategory ((Category)i, negate, reverse);
} else if (neg_cats[i]) {
+2005-01-08 Miguel de Icaza <miguel@ximian.com>
+
+ * RegexBugs.cs: Add new test.
+
2005-01-08 Nick Drochak <ndrochak@ieee.org>
* RegexTest.cs: Make pass on MS.NET
AssertEquals ("BR #01", false, m.Success);
}
+ [Test]
+ public void WhiteSpaceGroupped () // bug 71077
+ {
+ string s = "\n";
+ string p = @"[\s\S]"; // =Category.Any
+
+ AssertEquals ("WSG#1", true, Regex.IsMatch (s, p));
+ }
+
[Test]
public void RangeIgnoreCase() // bug 45976
{