Ci-dessous le contenu:
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
Je dois capturer les mots après le Object Name:
Word dans cette ligne. Qui est D:\ApacheTomcat\Apache-Tomcat-6.0.36\logs\localhost.2013-07-01.log
. J'espère que quelqu'un pourra m'aider avec ça.
^.*\bObject Name\b.*$
correspond à - Nom de l'objet
Ce qui suit devrait fonctionner pour vous:
[\n\r].*Object Name:\s*([^\n\r]*)
Votre match souhaité sera dans le groupe de capture 1.
[\n\r][ \t]*Object Name:[ \t]*([^\n\r]*)
Serait similaire mais ne permettrait pas des choses telles que "blah Nom d'objet: bla" et veillez également à ne pas capturer la ligne suivante s'il n'y a pas de contenu réel après "Nom d'objet:"
Mais j'ai besoin que le résultat du match soit ... pas dans un groupe de match ...
Pour ce que vous essayez de faire, cela devrait fonctionner. \K
réinitialise le point de départ du match.
\bObject Name:\s+\K\S+
Vous pouvez faire la même chose pour obtenir vos correspondances Security ID
.
\bSecurity ID:\s+\K\S+
Tu y es presque. Utilisez les expressions rationnelles suivantes (avec l'option multiligne activée)
\bObject Name:\s+(.*)$
Le match complet serait
Object Name: D:\ApacheTomcat\Apache-Tomcat-6.0.36\logs\localhost.2013-07-01.log
tandis que le groupe capturé contiendrait
D:\ApacheTomcat\Apache-Tomcat-6.0.36\logs\localhost.2013-07-01.log
Si vous voulez capturer le chemin du fichier directement, utilisez
(?m)(?<=\bObject Name:).*$
Cela pourrait fonctionner pour vous en fonction de la langue que vous utilisez
(?<=Object Name:).*
C'est une affirmation positive. Plus d'informations pourraient être trouvées ici
Cela ne fonctionnera pas avec le script Java cependant. Dans votre commentaire, j'ai lu que vous l'utilisiez pour logstash. Si vous utilisez l'analyse GROK pour logstash, cela fonctionnera. Vous pouvez vous vérifier ici