python正则表达式,用于包含长字符串中的单词和数字的日期

时间:2018-07-19 12:25:31

标签: python regex

我有以下字符串:

 'none; but currently has appt with new HJH PCP Rachel Salas, MD on October. 11, 2013 Other Agency Involvement: No\n')'

我正试图从中删除“ 2013年10月11日”。

11号后面的逗号必须是可选的。

我使用的代码是:

re.findall(r'(\S+)\s*\d+,*\s([2][0]\d\d|[1][9]\d\d)', raw_data[i])

我得到的输出跳过11:

[('October。','2013')]

我的逻辑的解释:

(\ S +)\ s *#将数字之前的单词限制为最大出现1,并避免完整句子。单词和数字之间的可选空格

\ d +,*#使用可选的逗号捕获月份和年份之间的数字

\ s([2] [0] \ d \ d | [1] [9] \ d \ d)#捕捉空格后的年份

非常感谢您的帮助。

0 个答案:

没有答案