Page 1 sur 1

Besoin d'un StringRegExp

Posté : mar. 19 avr. 2016 09:10
par Yle
Bonjour,

J'ai besoin d'un StringRegExp qui récupère le nombre situé entre les 2 parenthèses :

La zone a ce format : 04--01 (0)
La première parenthèse ouverte sera toujours en position 8 sachant qu'entre les parenthèses les chiffres peuvent varier de 0 à 999 et ce chiffre peut comporter un point comme 99.5
Après le point, une seule décimale permise

D'avance merci

Re: Besoin d'un StringRegExp  

Posté : mar. 19 avr. 2016 10:37
par jchd
Yle,
Soit on fait confiance au respect du format d'entrée, auquel cas la première possibilité convient, soit on souhaite s'assurer que le format est respecté, dans ce cas la seconde possibilité est préférable (y adjoindre un test d'erreur, évidemment).

Code : Tout sélectionner

Local $aText = [ _
	"04--01 (1)", _
	"04--01 (12)", _
	"04--01 (123)", _
	"04--01 (1.2)", _
	"04--01 (12.3)", _
	"04--01 (123.4)", _
	"04--01 (999.9)" _
]

For $s In $aText
	ConsoleWrite(_StringBetween($s, '(', ')')[0] & @CRLF)
Next
For $s In $aText
	ConsoleWrite(StringRegExp($s, '(?<=\()\d{1,3}(?:.\d)?(?=\))', 1)[0] & @CRLF)
Next

Re: Besoin d'un StringRegExp

Posté : mar. 19 avr. 2016 11:31
par Yle
Oui pourquoi compliquer alors qu'un _StringBetween convient parfaitement et cette commande (que je connais) ne m'a même pas effleurée l'esprit !
Merci JCHD je clos.