Даты регулярных выражений

70
5

# Montag 28.03.2011
# Mi, 23.03.11

^([1-9]|0[1-9]|[12][0-9]|3[01])[-/.]([1-9]|0[1-9]|1[012])[- /.][0-9]{4} or with \d{2}[.]\d{2}[.]\d{4}


работает на 28.03.2011, но не для 23.03.11. могу ли я автоматически добавить 20 до 11, если год составляет всего 11?

спросил(а) 2011-03-21T12:31:00+03:00 9 лет, 7 месяцев назад
1
Решение
70

^([1-9]|0[1-9]|[12][0-9]|3[01])[-/.]([1-9]|0[1-9]|1[012])[- /.]([0-9]{4}|[0-9]{2})$

Как насчет вышеуказанного

Кстати, это просто совпадение с шаблонами, поэтому оно также будет соответствовать неверным датам. например: 30.02.2011

ответил(а) 2011-03-21T12:38:00+03:00 9 лет, 7 месяцев назад
59

Почему бы не использовать один из методов, доступных в пространстве имен System.DateTime? Вы можете использовать DateTime.TryParseExact()

ответил(а) 2011-03-21T12:54:00+03:00 9 лет, 7 месяцев назад
Ваш ответ
Введите минимум 50 символов
Чтобы , пожалуйста,
Выберите тему жалобы:

Другая проблема