+2004-10-18 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * 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 <drieseng@users.sourceforge.net>
* RegexRunner.cs: fixed case mismatch of methods
{\r
StringBuilder result = new StringBuilder ();\r
int ptr = startat;\r
+ int counter = count;
+
+ result.Append (input.Substring (0, ptr));
\r
Match m = Match (input, startat);\r
- while (m.Success && count -- > 0) {\r
+ while (m.Success) {\r
+ if (count != -1)
+ if(counter -- > 0)
+ break;
result.Append (input.Substring (ptr, m.Index - ptr));\r
result.Append (evaluator (m));\r
\r
+2004-10-18 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * System.Text.RegularExpressions/RegexBugs.cs: added test for bug
+ #68398.
+
2004-07-05 Jackson Harper <jackson@ximian.com>
* RegexTest.cs: Add some simple tests for debugging/zen building.
text = re.Replace(text, " ");
AssertEquals("#01", "Go, \bNo Go", text);
}
+
+ [Test]
+ public void ReplaceNegOneAndStartat ()
+ {
+ string text = "abcdeeee";
+ Regex re = new Regex("e+");
+ text = re.Replace(text, "e", -1, 4);
+ AssertEquals("#01", "abcde", text);
+ }
}
}