Bonjour,
J'ai l'habitude d'utiliser regex101.com pour mettre en place mes patterns.
Aujourd'hui après que regex101 me confirme mon pattern mais que Autoit ne match rien du tout j'ai découvert qu'il éxistait des quick reference qui s'applique aux regex, du moins sur le site regex101.com.
https://regex101.com/r/dE8uJ1/146
https://regex101.com/r/dE8uJ1/143
J'ai installé la nouvelle version d'Autoit sur mon poste de travail, format portable.
Comment Autoit gère ces quick reference de Regex ?
[codeautoit]#include <array.au3>
$shablon_txt = FileRead("test.txt") ;voir les liens regex101 pour le contenu du texte
Dim $shablon_question[3] = ['RIJDEN\?', 'BESTUURDER', 'POSTCODE\)']
Dim $shablon_reponse[3]
For $i = 0 to 2
ConsoleWrite($shablon_question[$i]&@crlf)
$reponse = StringRegExp($shablon_txt, $shablon_question[$i]&'\s*(.+?)(?:\R+\d|\R*$)', 1)
if IsArray($reponse) Then
ConsoleWrite($reponse[0]&@crlf)
$shablon_reponse[$i] = $reponse[0]
Else
ConsoleWrite("no match : "&$reponse&@error&@extended&@crlf)
EndIf
Next
_ArrayDisplay($shablon_reponse)[/codeautoit]
[R] Quick reference et Regex ?
Règles du forum
- Merci de consulter la section "Règles du forum" et plus particulièrement "Règles et Mentions Légales du site autoitscript.fr" avant d'écrire un message.
- yohan8
- Niveau 6
- Messages : 245
- Enregistré le : mer. 07 déc. 2011 22:34
- Localisation : Rhône
- Status : Hors ligne
[R] Quick reference et Regex ?
Modifié en dernier par yohan8 le jeu. 16 juin 2016 17:03, modifié 1 fois.
- jchd
- AutoIt MVPs (MVP)
- Messages : 2282
- Enregistré le : lun. 30 mars 2009 22:57
- Localisation : Sud-Ouest de la France (43.622788,-1.260864)
- Status : Hors ligne
Re: [..] des versions de Regex ?
Dans ces exemples, la question n'est pas la version de PCRE utilisée. La différence provient des options différentes utilisées.
Ah, changement de cible en cours de route !
La "Quick Reference" proposée par le site est un mémento des méta-caractères de PCRE les plus courants.
Ah, changement de cible en cours de route !
La "Quick Reference" proposée par le site est un mémento des méta-caractères de PCRE les plus courants.
Modifié en dernier par jchd le jeu. 16 juin 2016 16:43, modifié 1 fois.
La cryptographie d'aujourd'hui c'est le taquin plus l'électricité.
- yohan8
- Niveau 6
- Messages : 245
- Enregistré le : mer. 07 déc. 2011 22:34
- Localisation : Rhône
- Status : Hors ligne
Re: [..] Quick reference et Regex ?
Effectivement, j'ai corrigé le premier post.
Comment Autoit gère ces options :
MODIFIER QUICK REFERENCE
g modifier: global. All matches (don't return on first match)
m modifier: multi-line. Causes ^ and $ to match the begin/end of each line (not only begin/end of string)
i modifier: insensitive. Case insensitive match (ignores case of [a-zA-Z])
x modifier: extended. Spaces and text after a # in the pattern are ignored
X modifier: eXtra. A \ followed by a letter with no special meaning is faulted
s modifier: single line. Dot matches newline characters
u modifier: unicode: Pattern strings are treated as UTF-16. Also causes escape sequences to match unicode characters
U modifier: Ungreedy. The match becomes lazy by default. Now a ? following a quantifier makes it greedy
A modifier: Anchored. Pattern is forced to ^
J modifier: Allow duplicate subpattern names
All flags with further information can be found in the quick reference.
Comment Autoit gère ces options :
MODIFIER QUICK REFERENCE
g modifier: global. All matches (don't return on first match)
m modifier: multi-line. Causes ^ and $ to match the begin/end of each line (not only begin/end of string)
i modifier: insensitive. Case insensitive match (ignores case of [a-zA-Z])
x modifier: extended. Spaces and text after a # in the pattern are ignored
X modifier: eXtra. A \ followed by a letter with no special meaning is faulted
s modifier: single line. Dot matches newline characters
u modifier: unicode: Pattern strings are treated as UTF-16. Also causes escape sequences to match unicode characters
U modifier: Ungreedy. The match becomes lazy by default. Now a ? following a quantifier makes it greedy
A modifier: Anchored. Pattern is forced to ^
J modifier: Allow duplicate subpattern names
All flags with further information can be found in the quick reference.
- jchd
- AutoIt MVPs (MVP)
- Messages : 2282
- Enregistré le : lun. 30 mars 2009 22:57
- Localisation : Sud-Ouest de la France (43.622788,-1.260864)
- Status : Hors ligne
Re: [..] Quick reference et Regex ?
Voir l'aide de StringRegExp. Les options sont passées sous la forme (?im-sx) dans le pattern.
La cryptographie d'aujourd'hui c'est le taquin plus l'électricité.
- yohan8
- Niveau 6
- Messages : 245
- Enregistré le : mer. 07 déc. 2011 22:34
- Localisation : Rhône
- Status : Hors ligne
Re: [..] Quick reference et Regex ?
Merci, j'ai activé le multiline avec (?m) et tout fonctionne
https://regex101.com/r/dE8uJ1/147
https://regex101.com/r/dE8uJ1/147