正则表达式 - 捕获整行并忽略行中的日期 and/or 时间子字符串

Regex - capture whole line and ignore date and/or time substrings in line

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

----------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 个正则表达式来匹配所有行,并仅检索“-”数据。

如果您的示例输入涵盖您输入中可能的所有格式,\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

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

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