Return 使用 Python / Jython RegEx 在 OpenRefine 中获得多个结果

Return multiple results in OpenRefine using Python / Jython RegEx

因此,我正在尝试提取显示为 dd.mm.yyyy.

的一些日期

有些单元格只包含一个日期,有些单元格包含多个日期(例如从 dd.mm.yyyydd.mm.yyyy),以及更多我不关心的文本。

我需要提取两个日期以创建两列 - "From" 和 "To",为只发生在一个日期的事件留空。

我试过在 Python / Jython 中使用以下表达式,但它只是 returns 包含多个单元格的第一个日期。

import re
g = re.search("([0-9])([0-9])\.([0-9])([0-9])\.([0-9])([0-9])([0-9])([0-9])", value)
return g.group()

如何返回两个日期?

非常感谢!

您可以使用 .findall() 获取所有匹配项。还可以通过删除每个数字的捕获组并使用 \d 而不是 [0-9]

使您的正则表达式更简单
import re
g = re.findall("\d{2}\.\d{2}\.\d{4}", value)
return g