Is there a function that returns index where RegEx match starts?
For multiple matches you can use code similar to this:
Regex rx = new Regex("as");
foreach (Match match in rx.Matches("as as as as"))
{
int i = match.Index;
}
Instead of using IsMatch, use the Matches method. This will return a MatchCollection, which contains a number of Match objects. These have a property Index.
Use Match instead of IsMatch:
Match match = Regex.Match("abcde", "c");
if (match.Success)
{
int index = match.Index;
Console.WriteLine("Index of match: " + index);
}
Output:
Index of match: 2