如何从字符串值中查找和提取日期

时间:2012-07-05 21:03:44

标签: ruby-on-rails ruby regex

我有一个像这样的字符串ruby。

mystring = "some string value with a date 02/02/2002"

我想提取日期以便将其存储在数据库中。我很确定我需要某种正则表达式以及搜索模式并从字符串中获取它的方法。

不确定这里需要做什么。

我发现这个Regex在线可以让你匹配那个日期格式。

reg = Regexp.new("^\d{1,2}\/\d{1,2}\/\d{4}$")

我如何使用它来解析字符串中的上述日期?

3 个答案:

答案 0 :(得分:13)

有点酷:

1.9.2-p290 :005 > "some string value with a date 02/02/2002".to_date
=> Sat, 02 Feb 2002
1.9.2-p290 :013 > "some another string 05/07/2012 with stuff after".to_date
=> Thu, 05 Jul 2012 

然后用它做任何你想要的东西,因为它的类是Date。

(我知道这不是正则表达式,但我仍然觉得它很酷; P)

答案 1 :(得分:10)

这个怎么样?

s = "some string value with a date 02/02/2002"
regex = /\d{1,2}\/\d{1,2}\/\d{4}/

s[regex] # => "02/02/2002"

请注意,您的正则表达式中不需要^$,因为您不会完全匹配字符串。

答案 2 :(得分:0)

您可以尝试MenuButton

sampleModel