我正在编写一个语法来解析一个如下所示的日志文件:
V9013_MURGIN_AE_7340057[01/10/2013 10:07:33]:DEBUG:<PCDATA>
V9013_MURGIN_AE_7340057[01/10/2013 10:07:33]:DEBUG:<PCDATA>
etc...
其中PCDATA
可以包含任何符号(包括\n
),并且“7340057”是一个 PID(进程 ID)。
问题是,如何描述结束PCDATA
?
在你看到 a 之前,我不能说去 nonreedy 并匹配任何东西V9013_MURGIN_AE_7340057
,因为那是 PID,它会在日志文件中发生变化,所以我不能将它的值硬编码为语法。
有没有办法做这样的事情:
- 我第一次匹配 a
7340057
(或当前文件中的任何内容)时,将其放入某个 var 中,例如$PID
- 描述
PCDATA
为 nongreedy(.)*
-match until$PID
也就是说,是否可以有一个变量(参数化)令牌定义?
提前致谢。