Page 1 sur 1

[R] StringRegExp trouver un mot entre 2 caractères connus

Posté : jeu. 24 déc. 2015 14:25
par JulienBoul
Bonjour,

Je cherche à extraire "NOM PRENOM" sachant que le texte qui encadre ces valeurs est toujours le même. Voici l'expression complète
"Gestion des sinistres - NOM PRENOM (M"
j'avais donc pensé à

Code : Tout sélectionner

StringRegExp("Gestion des sinistres - NOM PRENOM (M", "(?im)^Gestion des sinistres - (\N+) (M", 3)
 
mais ça ne fonctionne pas.

Pouvez vous m'aider à y voir plus clair? D'avance merci !

Re: StringRegExp trouver un mot entre deux caractères connus

Posté : jeu. 24 déc. 2015 14:40
par orax
Bonjour, merci de modifier le titre du message pour qu'il respecte les règles de présentation d'un message.

Re: [..] StringRegExp trouver un mot entre 2 caractères conn

Posté : jeu. 24 déc. 2015 14:44
par JulienBoul
Bonjour orax,

Autant pour moi, j'ai effectué la modification.
Je te souhaite de joyeuses fêtes de fin d'année.

Cdt, Julien.

Re: [..] StringRegExp trouver un mot entre 2 caractères conn

Posté : jeu. 24 déc. 2015 14:51
par jguinch

Code : Tout sélectionner

$nomprenom = StringRegExpReplace("Gestion des sinistres - NOM PRENOM (M", ".+?- (.+?) \(.+", "$1")
ConsoleWrite($nomprenom)

Re: [..] StringRegExp trouver un mot entre 2 caractères conn

Posté : jeu. 24 déc. 2015 14:59
par orax
Merci Julien, bonnes fêtes également.
L'expression contient une erreur. Il faut échapper la parenthèse.

Code : Tout sélectionner

(?im)^Gestion des sinistres - (\N+) [color=#FF0000]\([/color]M

Re: [..] StringRegExp trouver un mot entre 2 caractères conn

Posté : jeu. 24 déc. 2015 15:12
par JulienBoul
Hello jguinch,

Merci de ta réponse si rapide, je n'ai pas eu le temps de la tester, j'ai simplement échappé ma parenthèse comme l'exemple de orax et nikel, ça fonctionne. Et dire que je me casse la tête dessus depuis 14h... Halala, les expressions régulières et leur rigueur...

Bonne soirée à tout les deux et merci de votre aide encore, ici, c'est Noël tous les jours, partage et gentillesse toute l'année :-)
Je passe en résolut.

Cdt, Julien.

Re: [R] StringRegExp trouver un mot entre 2 caractères connu

Posté : jeu. 24 déc. 2015 15:17
par mikell

Code : Tout sélectionner

#Include <Array.au3>
$res = StringRegExp("Gestion des sinistres - NOM PRENOM (M", "\s([A-Z\h]+)\s", 3)
_ArrayDisplay($res)

Re: [R] StringRegExp trouver un mot entre 2 caractères connu

Posté : jeu. 24 déc. 2015 15:29
par orax
Marche pas ça...

Code : Tout sélectionner

StringRegExp("Gestion des sinistres - JEAN PÈRE-NOËL (M", "\s([A-Z\h]+)\s", 3)
► Afficher le texte

Re: [R] StringRegExp trouver un mot entre 2 caractères connu

Posté : jeu. 24 déc. 2015 15:38
par jguinch

Code : Tout sélectionner

#Include <Array.au3>
$res = StringRegExp("Gestion des sinistres - JEAN PÈRE-NOËL (M", "-\s([\p{Lu}\h-]+)\s", 1)
_ArrayDisplay($res)
 
Sinon, l'option 1 suffit puisqu'il n'y a qu'un seul résultat :wink:

Re: [R] StringRegExp trouver un mot entre 2 caractères connu

Posté : jeu. 24 déc. 2015 21:39
par mikell
orax a écrit :Marche pas ça...
Le commentaire "oui mais là ça marche pô..." pour une réponse à propos d'un regex est un grand classique (que ce soit ici ou sur le forum US) simplement parce que les prérequis ne sont pas précisément mentionnés dans la question, comme c'est le cas dans ce sujet
Donc je suis un peu déçu, j'attendais que ce soit le questionneur qui fasse la remarque pour lui rentrer dedans :twisted:

Tant pis ce sera pour une autre fois :mrgreen: