我想使用Paul Schoenfeld的Timex库将一个格式为"YYYYMMDD"的简单字符串解析为Timex.Parse.DateTime.t
类型。
现在,我正在做这样的事情:
{:ok, dt} = Timex.parse "20161111", "{YYYYDDMM}"
** (MatchError) no match of right hand side value: {:error, {:format, "Expected at least one parser to succeed at line 1, column 0."}}
上面的代码不起作用。但当我这样做时:
{:ok, dt} = Timex.parse "2016", "{YYYY}"
{:ok, #<DateTime(2016-01-01T00:00:00Z)>}
我将dt
分配为DateTime
变量。
我做错了什么?
提前感谢:D
- 看起来
DD
和MM
不是有效的解析器。您可能正在寻找0D
和0M
(此处提供了更多日期/月份解析器) - 您需要将每个组件封装在它们自己的
{}
中
在Timex:的最新git版本上运行
iex> Timex.parse "20161111", "{YYYY}{0D}{0M}"
{:ok, #<DateTime(2016-11-11T00:00:00Z)>}