正则表达式 - 捕获整行并忽略日期和/或时间子串

时间:2017-05-22 07:53:14

标签: regex regex-group

我需要能够捕获整行并忽略文本文件中的日期和时间,因为我只需要非日期和时间数据。以下是文件的示例部分:

----------01/01/01----------14:49:43-----
-----01/01/01 14:49----------------------
--------------------14:50----------------
-----01/01/01 14:51:13-------------------
------------------01/01/01---------------

' - '意味着那些是重要的数据。正如您所看到的,日期和时间两者可以在同一行,位于行内的任何地方,时间可以是HH:MM或HH:MM: SS

我真的希望能够只使用1个正则表达式匹配所有行,并检索' - '仅数据。

2 个答案:

答案 0 :(得分:1)

如果您的示例输入涵盖了输入中可能的所有格式,\d\d\/\d\d\/\d\d将匹配所有日期和\d\d:\d\d(?::\d\d)?所有时间子字符串。从这两个构建的替换将匹配任何日期或时间子字符串:

\d\d\/\d\d\/\d\d|\d\d:\d\d(?::\d\d)?

只需用空字符串全局替换所有找到的模式,您将只留下重要数据。

演示:https://regex101.com/r/OKokqq/1

答案 1 :(得分:1)

(\d{2}\/\d{2}\/\d{2})|(\d{2}:\d{2}(?::\d{2})?)

演示:https://regex101.com/r/bgx1NR/2

相关问题