100 votes

Regex pour obtenir les mots après la chaîne de correspondance

Voici le contenu :

Sujet :
    ID de sécurité :        S-1-5-21-3368353891-1012177287-890106238-22451
    Nom du compte :       ChamaraKer
    Domaine du compte :     JIC
    ID de connexion :       0x1fffb

Objet :
    Serveur de l'objet :  Sécurité
    Type d'objet :    Fichier
    Nom de l'objet :    D:\ApacheTomcat\apache-tomcat-6.0.36\logs\localhost.2013-07-01.log
    ID de gestion :  0x11dc

Je dois capturer les mots après le mot Nom de l'objet: dans cette ligne. Qui est D:\ApacheTomcat\apache-tomcat-6.0.36\logs\localhost.2013-07-01.log.

Comment puis-je faire cela ?

^.*\bNom de l'objet\b.*$ correspond à - Nom de l'objet

-4voto

user1586957 Points 139

Ceci est une solution Python.

import re

line ="""Sujet:
    ID de sécurité:        S-1-5-21-3368353891-1012177287-890106238-22451
    Nom du compte:       ChamaraKer
    Domaine du compte:     JIC
    ID de connexion:       0x1fffb

Objet:
    Serveur d'objet:  Security
    Type d'objet:    Fichier
    Nom de l'objet:    D:\ApacheTomcat\apache-tomcat-6.0.36\logs\localhost.2013-07-01.log
    ID de poignée:  0x11dc"""

regex = (r'Nom de l\'objet:\s+(.*)')
match1= re.findall(regex,line)
print (match1)

*** Interpréteur distant réinitialisé  ***
>>> 
['D:\\ApacheTomcat\x07pache-tomcat-6.0.36\\logs\\localhost.2013-07-01.log']
>>>

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X