我想将“1 September 1899”等字符串转换为“1899-09-01”(“1 July 2020”转换为“2020--07-01”)。我该怎么做?
value.toString("dd/MM/YYYY") 这当然不起作用 和 date_parse_from_format(value,'M jS Y', $date_str) 也失败
发布的答案均无效。
在 OpenRefine 中,像“1 September 1899”这样的值没有进一步的含义。但是您可以使用 toDate 将此文本转换为日期类型。然后,您可以使用日期中的某些组件(例如年、月……)通过 toString 函数形成一个新字符串。
下面的 GREL 表达式就可以做到这一点:
value.toDate("dd MMMM yyyy").toString("yyyy-MM-dd")
您还可以在
toDate
函数中使用多种格式将具有混合日期格式的列转换为通用格式。详细说明例如的含义yyyy
可以在 SimpleDateFormat 类的文档中找到。