转换日期在二郎山(convert date in erlang)

2019-07-17 21:13发布

我有一个函数(名为test),它返回一个日期

我给你这种回报的一个例子:“01军2012年”

现在,我想使这个迄今为止在这种形式的月/年

所以“01君2012”应该成为“06/2012”

因为我想用这个日期来发送短信

send(To,Date) ->
Message =io_lib_format("pr%EAt %E0 payer le ~s",[Date]),
    Url = io_lib:format("http://192.168.1.8/sendsms?tel=~s&text=~s", [To, Message]),
     http:request(lists:flatten(Url), sms).

照我说的功能测试这种形式返回一个日期,例如“01君2012”

一个我应该月/年这个形式转化为另一种形式(如结果我的例子06/2012)

我想我应该开发一种具有作为参数,以这种形式(日 - 月 - 年)日期的功能的,结果该功能以这种形式的日期月/年

注意,我给你时间应转换的同一个例子:02-JAN-2012,01 - 2月 - 2012年01月 - 2012年02月 - 2012年01月 - 2012年01月 - 2012

就像我说的功能测试返回这种日期(在测试的代码,我为了回报这种日日-月-年的执行HTTP请求(为PHP脚本的回报,


谢谢,但是当我ec_date测试:分析我有这样的错误** exception error: undefined function ec_date:parse/1

注意,我使用Erlang的13版本中运行

Erlang R13B03 (erts-5.7.4) [source] [rq:1] [async-threads:0] [hipe] [kernel-poll:false]

Eshell V5.7.4  (abort with ^G)

Answer 1:

考虑ec_date在erlware_commons ,这是一个叉dh_date 。 (两者都是完全合法的,但我个人使用ec_date变体)/

它们既可以用于出于这样的目的:解析和格式化日期。

> OrigDate = "01-Jun-2012",
> ParsedDate = ec_date:parse(OrigDate),
> FinalDate = ec_date:format("m/Y",ParsedDate).
"06/2012"


Answer 2:

的组合string:split/2string:to_lower/1和一个函数看起来像:

month("jan") -> 1;
...
month("dec") -> 12.

应该管用。 还搜索GitHub的,因为有可能日期解析模块,为您的格式在那里已经......与测试。



文章来源: convert date in erlang
标签: erlang