Index
Index у Match
считается с нуля, как индексы строки в C#.
Работает вместе с
Length
и Value.
У Capture
своё Index
для каждого захвата.
Синтаксис
int pos = match.Index;
Пример
Давайте найдем bcd в "abcde":
using System;
using System.Text.RegularExpressions;
class Program
{
static void Main()
{
Match match = Regex.Match("abcde", @"bcd");
Console.WriteLine(match.Index);
}
}
Результат выполнения кода:
1
Пример
Давайте прочитаем Index цифр в
"12345":
using System;
using System.Text.RegularExpressions;
class Program
{
static void Main()
{
Match match = Regex.Match("abcde12345", @"\d+");
Console.WriteLine(match.Index);
}
}
Результат выполнения кода:
5
Пример
Давайте сравним Index двух совпадений
через NextMatch:
using System;
using System.Text.RegularExpressions;
class Program
{
static void Main()
{
Match first = Regex.Match("a1b2", @"\d");
Match second = first.NextMatch();
Console.WriteLine(first.Index);
Console.WriteLine(second.Index);
}
}
Результат выполнения кода:
1
3
Смотрите также
-
Length,
сколько символов отIndex -
Index у Capture,
позиция одного захвата группы -
NextMatch,
следующее совпадение дальше по строке -
Match,
объект сIndex