Ruby / Rails Как разобрать datetime из русской строки - PullRequest
1 голос
/ 20 мая 2019

Мне нужно разобрать дату / время из строки на русском языке.Пример: 14:24, 19 мая 2019.

1 Ответ

2 голосов
/ 20 мая 2019

Я бы сказал, Time.parse("14:24, 19 мая 2019") должно работать на вас;)

( В случае, если вы используете рельсы )

Да, он не может анализировать не английские названия месяцев, поэтому его следует использовать как здесь :

RUSSIAN_MONTH_NAMES_SUBSTITUTION = { 'мая' => 'may', 'июня' => 'june' }

def russian_to_english_date(date_string)
  date_string.gsub(/мая|июня/, RUSSIAN_MONTH_NAMES_SUBSTITUTION)
end

Time.strptime(russian_to_english_date("14:24, 19 июня 2019"), "%H:%M, %d %B %Y")
# or
Time.parse(russian_to_english_date("14:24, 19 июня 2019"))
...