【发布时间】:2019-01-24 13:05:29
【问题描述】:
据我所知,LUIS 仅出现在英语的 en-US 文化中(没有 en-UK)。因此,我希望 datetimeV2 实体以 YYYY-DD-MM 的形式返回。但是有时 LUIS 会以 YYYY-MM-DD 的形式发回 datetimeV2 实体,并且无法以编程方式判断这种情况何时发生。
例子:
“请假 01/03/2019 至 04/03/2019”的表述解析为美国 YYYY-DD-MM 格式:
[ { timex: '(2019-01-03,2019-04-03,P90D)',
type: 'daterange',
start: '2019-01-03',
end: '2019-04-03' } ]
但是,话语“请假 2019 年 3 月 1 日至 2019 年 3 月 4 日”或“请假 2019 年 3 月 1 日至 2019 年 3 月 4 日”解析为英国 YYYY-MM-DD 格式:
[ { timex: '(2019-03-01,2019-03-04,P3D)',
type: 'daterange',
start: '2019-03-01',
end: '2019-03-04' } ]
另外,如果在月份 > 12 时日期写为 DD/MM/YYYY,格式会再次切换为 YYYY-MM-DD。例如。 “请假 01/03/2019 到 18/03/2019”解析为第一个日期为 YYYY-DD-MM,第二个日期为 YYYY-MM-DD:
[ { timex: '(2019-01-03,2019-03-18,P74D)',
type: 'daterange',
start: '2019-01-03',
end: '2019-03-18' } ]
如果格式不断变化,这使得解析日期变得非常困难。如何确保每个日期范围都格式化为 YYYY-DD-MM?甚至是 YYYY-MM-DD,只要它一致或至少告诉我它使用了什么格式,我都不在乎。
【问题讨论】:
标签: azure datetime azure-language-understanding