Page 1 sur 1
StringRegExp/Mode 1
Posté : dim. 19 juin 2016 16:29
par mdanielm
Dans le mode 1 ($STR_RegExpArrayMatch) il est dit: "Return array of matches"
que j'ai traduit par: "Retourne le tableau des correspondances".
Or, si la variable retournée est bien un tableau, elle ne contient que la première occurrence trouvée à partir de la position de départ de la recherche.
Je propose de modifier le fichier d'aide FR.
Exemple:
$sujet = "local = $a = [- 1, + 2, 3]"
$regex = "(?:)([-+])?\s*(\d+)"
J'ai bien compris que je peux boucler pour trouver les autres occurrences
(Post modifié)
Re: StringRegExp/Mode 1
Posté : dim. 19 juin 2016 17:38
par jchd
Non, le tableau contient l'ensemble des captures effectuées par le pattern, effectué une seule fois.
Re: StringRegExp/Mode 1
Posté : dim. 19 juin 2016 18:50
par mdanielm
"effectué une fois"
veut dire "pour la première correspondance trouvé"
pas pour les correspondances.
Dans l'exemple ci dessus, le 1ere correspondance retourne le tableau:
[0] '-'
[1] '1'
Je trouve que "le tableau des correspondances" prête à confusion.
Daniel
Re: StringRegExp/Mode 1
Posté : dim. 19 juin 2016 19:55
par mikell
Je suis absolument d'accord, c'est pas clair du tout
Pour ce que j'ai pu constater l'option 1 retourne un tableau qui ne contient que le 1er match trouvé
Dans l'exemple de l'aide, la boucle fait 3 recherches successives à 3 offsets différents et retourne 3 arrays
Idem pour l'option 2 d'ailleurs, où l'exemple de l'aide précise "single return" parce qu'il n'y a pas de boucle
"Return array of first matches" serait plus logique mais pas forcément plus compréhensible

Re: StringRegExp/Mode 1
Posté : dim. 19 juin 2016 20:23
par orax
Peut-être quelque chose comme...
Retourne un tableau avec la première occurrence de chaque résultat. Mais je ne sais pas si c'est vraiment plus clair...

Re: StringRegExp/Mode 1
Posté : dim. 19 juin 2016 21:57
par mikell
Return array of match(es)

Re: StringRegExp/Mode 1
Posté : lun. 20 juin 2016 17:49
par mdanielm
Voilà une proposition pour une nouvelle page d'aide StringRegExp.htm pour le fichier FR.
- J'ai remis les paramètres anglais puisqu'on ne traduit pas les noms des paramètres dans les autres pages;
- J'ai réuni les deux tableaux 'Mode' en un seul;
- J'ai enlevé les titres exotiques des exemples en les plaçant en commentaires: c'était la seule page dont les titres des exemples n'étaient pas: Exemple1, Exemple 2, ... Dans un traitement automatisé il fallait du code rien que pour cette page! (Moulinette)
- J'ai changé les exemples: n'hésitez pas à m'en proposer d'autres (en remplacement des miens)