Регулярное выражение для сопоставления строки, содержащей два слова
Ниже мой контент:
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
, Как я могу это сделать? Было бы здорово, если бы кто-нибудь мог помочь мне с этой проблемой.
2 ответа
Решение
Ваше регулярное выражение на самом деле пытается сопоставить строки, которые содержат объект или имя.
Измени это
^.*\bObject Name\b.*$
Ответ на комментарий:
^.*\bObject Name:(.*)$
Группа 1 будет иметь все совпадения внутри (.*).
В зависимости от движка регулярных выражений, например, это будет \1
(для Notepad++) или match.Groups[1].Value
(С #)