小编Mic*_*ael的帖子

为什么“Date.parse”不会针对无效日期字符串引发异常?

我尝试创建一个方法,如果字符串是有效日期,则返回转换为日期的给定字符串,否则返回该字符串。这是代码:

\n\n
def check_string(string)\n  if date = (Date.parse(string) rescue nil)\n    return date\n  end\n  string\nend\n
Run Code Online (Sandbox Code Playgroud)\n\n

当字符串为:

\n\n
"An\xc3\xa1lise de Novos M\xc3\xa9todos Gen\xc3\xa9ticos"\n
Run Code Online (Sandbox Code Playgroud)\n\n

Date.parse方法返回一个有效日期:

\n\n
#<Date: 2017-11-01 ((2458059j,0s,0n),+0s,2299161j)>\n
Run Code Online (Sandbox Code Playgroud)\n\n

而不是引发异常。

\n

ruby date

2
推荐指数
1
解决办法
1323
查看次数

标签 统计

date ×1

ruby ×1