Это было бы этим регулярным выражением:
_([0-9]+)
(группа захвата 1 содержит номер.)
Или, если ваш движок поддерживает lookbehinds (что, насколько я помню, не относится к C #):
(?<=_)[0-9]+
(группа захвата 0 содержит номер.)
(...)
обозначает группу уловов. В вашем объекте сопоставления вы можете либо получить к ним доступ по их индексу через yourMatch.Groups[index].Value
, либо если вы назвали свои группы перехвата через (?<name>...)
по их имени, например yourMatch.Groups[name].Value
. В этом случае значение будет содержать то, что соответствовало подвыражению этой конкретной группы (в вашем случае это 4-значное число).
Также, если вы хотите, чтобы регулярное выражение совпадало, если это ровно 4 цифровых символа,
затем замените +
на {4}\b
Редактировать: Как правильно заметил Алан Мур, они называются «группа захвата», а не «группа захвата». Мне нужно больше спать.