2013-10-04 67 views
1

下面是我的内容:正则表达式匹配包含两个字线

Subject: 
    Security ID:  S-1-5-21-3368353891-1012177287-890106238-22451 
    Account Name:  ChamaraKer 
    Account Domain:  JIC 
    Logon ID:  0x1fffb 

Object: 
    Object Server: Security 
    Object Type: File 
    Object Name: D:\ApacheTomcat\apache-tomcat-6.0.36\logs\localhost.2013-07-01.log 
    Handle ID: 0x11dc 

我需要匹配使用正则表达式包含Object Name行。

下面是我曾尝试:

^.*\b(Object|Name)\b.*$ 

上述正则表达式匹配Account Name: ChamaraKer,但我的要求是匹配包含字Object Name行。我怎样才能做到这一点?如果任何人能够帮助我解决这个问题,那将是非常棒的。

回答

1

你的正则表达式实际上是试图匹配的是包含对象OR名称线..

更改它

^.*\bObject Name\b.*$ 
+0

谢谢您的回答。如果你能帮助我,我还有一个问题。我需要捕获该行中的“对象名称:”后面的单词。我怎么做?请帮助我 –

1

回应评论:

^.*\bObject Name:(.*)$ 

第1组有(。*)中的所有内容都匹配。

根据正则表达式引擎,例如它会\1(记事本++)或match.Groups[1].Value(C#)

相关问题