使用Ruby将字符串转换为日期

kta*_*ras 5 ruby date strptime

我的日期是字符串,格式如下:23 Nov. 2014.当然,使用这样的表达式将此字符串转换为日期很容易:

Date.strptime(my_string, '%d %b. %Y')
Run Code Online (Sandbox Code Playgroud)

但是月份是5月还有一个问题 - 没有点,比如23 May 2014.我的表情破裂了.

有人可以帮忙解决这个问题吗?如何为我的案例制作通用表达方式?

Mic*_*zlo 3

my_string从日期模式中删除句点。

Date.strptime(my_string.sub('.', ''), '%d %b %Y')
Run Code Online (Sandbox Code Playgroud)

假设您最多有一个点my_string。如果可能有多个,请使用gsub.

Date.strptime(my_string.gsub('.', ''), '%d %b %Y')
Run Code Online (Sandbox Code Playgroud)