正则表达式 - 捕获整行并忽略行中的日期 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)?
只需用空字符串全局替换所有找到的模式,您将只剩下重要数据。
(\d{2}\/\d{2}\/\d{2})|(\d{2}:\d{2}(?::\d{2})?)
我需要能够捕获 整行 并忽略文本文件中的日期和时间,因为我只需要非日期和时间数据。这是文件的示例部分:
----------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)?
只需用空字符串全局替换所有找到的模式,您将只剩下重要数据。
(\d{2}\/\d{2}\/\d{2})|(\d{2}:\d{2}(?::\d{2})?)