Найдите 2-й год, если он существует, с помощью регулярных выраженийC#

Место общения программистов C#
Ответить
Anonymous
 Найдите 2-й год, если он существует, с помощью регулярных выражений

Сообщение Anonymous »

Я получаю несколько названий и хочу узнать, есть ли в этом тексте год (1950–2050), но я хочу найти второй год, если он существует. Я уже создал метод. Если метод не найден, я хочу вернуть 0.

Код: Выделить всё

string text1 = "Name 2000";
string text2 = "Name";
string text3 = "2000 2012";
string text4 = "2012 Name";

public static int get_title_year(string title)
{
string pattern = @"\b(?\d{4})";
Regex rx = new Regex(pattern);
if (rx.IsMatch(title))
{
Match match = rx.Match(title);
return Convert.ToInt16(match.Groups[1].Value);
}
else
{
return 0;
}
}
Мой метод возвращает

2000 0 2000 2012

Вместо

2000 0 2012 2012

Подробнее здесь: https://stackoverflow.com/questions/140 ... xpressions
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C#»