同一个 perl 命名的正则表达式提取的多个名称

Multiple names for the same perl named regex extraction

我正在处理其他人编写的正则表达式。我需要有一个现有的命名提取别名以使用不同的名称。

基本上我正在使用的正则表达式块如下所示:

(-|(?<objectname>.*\(?<process>[^\r\n\]+))

这与日志的一部分相匹配,其中包含可执行文件的路径。

它将我需要的内容提取到objectname中,并将可执行文件名称减去进程中的路径。

如果我查找 objectID,我需要别名 objectname 才能返回。我不是在为具有相同名称的多个组寻找 /j 运算符。

只需将命名捕获包装在另一个命名捕获组中:

(-|(?<objectID>(?<objectname>.*\(?<process>[^\r\n\]+)))