使用正则表达式仅过滤 windows 事件日志中的第二个帐户名称

Filtering only second Account Name in windows event log using a regex

有谁知道从 Windows 事件日志中仅过滤第二个帐户名称的 reqex 语法?我不想要我得到的第一个帐户名称,但提到的第二个帐户名称是已删除的帐户,这就是我有兴趣了解的内容。

我可以同时使用这两个帐户,但我真的希望只有第二个帐户

示例:

<13>May 23 15:11:00 14.5.15.1 AgentDevice=WindowsLog AgentLogFile=Security Source=Microsoft-Windows-Security-Auditing Computer=john.doe User= Domain= EventID=4726 EventIDCode=4726 EventType=8 EventCategory=13824 RecordNumber=4156926121 TimeGenerated=1472042299838 TimeWritten=1472048832838 Message=A user account was deleted. Subject: Security ID: S-1-5-21-37618230-746332178-285459281-20341 Account Name: AdminGuy Account Domain: Some Logon ID: 0x2q45w29b1 Target Account: Security ID: S-1-5-21-37438650-746321018-288529281-12311 Account Name: JohnDoe Account Domain: Some Additional Information: Privileges -

\sAccount\sName\:\s(.*?)\    

这只是提取两个帐户名称的一个示例。但是有谁知道如何只提取第二个帐户名称?

在上面的示例中,第二个帐户名称将是帐户名称:

JohnDoe

也许使用类似这样的东西:

\sAccount\sName:\s.*\sAccount\sName:\s([^\s]*)\

这是模式:

(?ms)Account\s+Name.*?(Account\s+Name:\s+)(\w+)

但是你需要收集捕获括号。在此正则表达式中,帐户名位于组号中。 2. 您使用的 language/library 为您提供了一种访问捕获括号捕获文本的方法。

对于 Graylog,这是正确的正则表达式:

Account Name:.*?Account Name:(\s*(\S*))