如何在 DateTime 中修剪全年和秒

Posted

技术标签:

【中文标题】如何在 DateTime 中修剪全年和秒【英文标题】:How to trim Full Year and Seconds in DateTime 【发布时间】:2020-08-27 20:19:18 【问题描述】:

我将日期设为“2020 年 2 月 12 日下午 4:30:29”。但我需要修剪年份和秒日期时间格式,如 '12/02/20 下午 4:30'

MEL 中用于获取高于日期时间的等效函数是什么?

谢谢

【问题讨论】:

我已经给出了一个临时解决方案。如果您提供您的示例代码。我可能会帮助你更多。 嗨,Sachin,感谢您的回复。是 MEL 代码吗? 对不起,我已经用 Python 提供了解决方案。我不知道 MEL。 【参考方案1】:

恐怕 MEL 中没有等效的功能来做这件事。但好消息是您可以创建它! (是的,MEL 需要更多时间函数才能工作……)。

我已经创建了这个你可以使用的全局函数(我假设 2 是天,12 是月,如果不是你可以更改顺序):

separator = "/";
space = " ";
hourSeparator = ":";

$global:stringDatetimeToArray = function(datetime)

    array['year']   =  substring(datetime, 6, 10);
    array['month']  =  substring(datetime, 3, 5);
    array['day']    =  substring(datetime, 0, 2);
    array['hour']   =  substring(datetime, 11, 13);
    array['minute'] =  substring(datetime, 14, 16);
    array['seconds'] = substring(datetime, 17, 19);
    array['meridian'] = substring(datetime, 20, 22);
    return array;
;

concat(array['month'], separator, array['day'], separator, array['year'], space, array['hour'], hourSeparator, array[minute], space, array['meridian']);

我对您的建议是生成一种将时间戳转换为这些值的数组的方法,然后您可以比现在更轻松地处理这些问题。可以看一个例子on this github script

【讨论】:

【参考方案2】:
    import re
    date_str = '2/12/2020 4:30:29 PM'
    sub_str = re.search(':\d+(.*?)\s',date_str).group(1)
    date_str = date_str.replace(sub_str,'')
    print(date_str)

输出:2020 年 2 月 12 日下午 4:30

【讨论】:

以上是关于如何在 DateTime 中修剪全年和秒的主要内容,如果未能解决你的问题,请参考以下文章

如何从充满 datetime.time 值的系列中提取小时、分钟和秒

在Kusto中format_datetime()中,将分和秒作为00的日期时间。

sql 语句如何插入全年日期?

熊猫时间增量只有小时分钟和秒

如何在时间转换器功能中仅获得前两位秒数

C#TimeSpan时间差转换成分钟和秒数