正则表达式捕获某些关键字后出现的日期

时间:2015-09-18 11:37:12

标签: regex

我需要处理一系列文本文件,内容如下:

  

Bla bla数据库:07/08/2014 Data para pagamento do rendimento:   14/08/2014 Valordistribuídoporcota:R $ 0,83。

我需要捕获文件中的日期,但我还需要限定我找到的日期。例如,在关键字“base”之后,如果有日期,我想捕获它(在“base”之后找到的第一个日期)。在“基数”和日期之间可以有许多其他单词或字符。

日期格式为d / M / yyyy或dd / MM / yyyy。

我正在尝试以下正则表达式模式:

"base.+(?<date>[0123]?[0-9]/[01]?[0-9]/[12]?[90]?[0-9][0-9])"

但我没有得到正确的结果。

有人可以帮助我吗?

由于

1 个答案:

答案 0 :(得分:2)

尝试不贪婪的版本。

base.+?([0123]?[0-9]/[01]?[0-9]/[12]?[90]?[0-9][0-9])