为什么日期解析依赖于分隔符?

And*_*Vit 3 ruby date

采取以下两个例子:

Date.parse("02/20/2009")
Date.parse("02-20-2009")
Run Code Online (Sandbox Code Playgroud)

在第一个示例中,假定顺序为MM DD YYYY,但在第二个示例中引发错误,因为(我假设)它尝试将其解析为DD MM YYYY.

为什么?

var*_*tec 10

"02/20/2009"是en_US语言环境中的日期表示."02-20-2009"不是,因此假定遵循标准.有两种流行的标准,除美国外最常用的是: DD-MM-YYYY或ISO 8601,即YYYY-MM-DD.

http://en.wikipedia.org/wiki/File:Date.png