Bonjour
J'ai essayé d'utiliser l'unité regex proposée ici et je rencontre des problèmes.
Qui utilise des regex avec Lazarus parmi vous ?
Bonjour
J'ai essayé d'utiliser l'unité regex proposée ici et je rencontre des problèmes.
Qui utilise des regex avec Lazarus parmi vous ?
Bonjour,
Si vous souhaitez des réponses, il faudrait poser une question plus précise. Pouvez-vous indiquer les problèmes rencontrés avec des exemples de code qui ne fonctionnent pas ?
Cordialement,
Gilles
Bonjour
En 1er, j'essaye avec l'unité regexpr de laza
Code pascal : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 program Project1; {$mode delphi }{$H+} uses RegExpr; var R:TRegExpr; begin R := TRegExpr.Create; try R.Expression:= '^(?=.*[a-z])(?=.*[A-Z])(?=.*\d)[a-zA-Z\d]{8,}$'; writeln(R.Exec('Abcd1234')); finally R.Free; end; end.
A l’exécution j'ai une exception sur un caractère non reconnu position 11. Bizarre, sur le forum US JurassicPork arrive à le faire fonctionner....
Dans un second essai j'essaye avec l'unité de beRo
Code pascal : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26 program match1; {$I DIRECTIVES} uses SysUtils, Classes, FLRE in '..\src\FLRE.pas'; var e: TFLRE; c: TFLRECaptures; s: TFLRERawByteString; begin s := 'Abc1234'; e := TFLRE.Create('^(?=.*[a-z])(?=.*[A-Z])(?=.*\d)[a-zA-Z\d]{8,}$', []); try WriteLn(e.Match(s, c)); WriteLn(Copy(s, c[0].Start, c[0].Length)); finally e.Free; end; ReadLn; end.
qui retourne FALSE.
Du coup, je viens de me souvenir qu'ici aussi nous avons JurassicPork, c'est le même ???
hello,
il se pourrait bien que ce soit le même
As-tu bien lu tous mes messages du forum en angliche :
Dans le premier message j'explique pourquoi on ne peut pas utiliser la syntaxe (?= avec TRegexpr et FLRE
J'ai utilisé les deux fonctions proposées par Engkin pour faire mes tests. Il utilise une autre syntaxe pour le TRegexpr et il utilise BRRE au lieu de FLRE.
Ami calmant, J.P
Bonjour JP
Je crois que je vais utiliser BRRE, mais
- je cherche à savoir pourquoi il plante en mode debug....
BeRo sur la page github de son unité précise 'but please, disable the buggy DFA stuff at BRRE then'
oui mais quoi ???- je dois me mettre d'accord avec la société tiers qui va me fournir les regex sur le format (en gros pour le moment remplacer le ^ de début et le $ de fin par /)
un collégue qui a fait une recherche et moi même avons aussi vu synregex c'est un composant du SynEditor de l'ide ?
@bientôt
Partager