Нужно в Ruby проверить строку вида '12.01.2016 14:26', корректные ли в ней дата/время.
Предполагаю, что это проще всего сделать при помощи регулярного выражения
Если регулярным выражением, то каким?
Если не регулярным выражением, то как тогда?
Ответ
Некоторые люди, столкнувшись с проблемой, думают: "Точно, я воспользуюсь регулярными выражениями". Теперь у них две проблемы.
— Джейми Завински
Вам не нужны регулярные выражения для решения этой задачи.
Решение есть в стандартной библиотеке Ruby. Это Date.strptime, принимающий строку и разбирающий её по strftime-подобной маске
DateTime.strptime('12.01.2016 14:26', '%d.%m.%Y %H:%M')
# => #
В случае некорректности даты/времени прилетит исключение ArgumentError
Комментариев нет:
Отправить комментарий