Page 1 sur 1

recherche d'une chaine de caractere comportant deux caracteres specifique

Posté : mar. 22 janv. 2019 09:27
par yohanb767
Bonjour à tous ,

je suis bloqué sur un petit détail dans un de mes script

je ne connais pas trop les fonctions string ne les ayant très peu utilisées

j'aimerai retrouver dans un fichier txt une chaine de caractère de ce type E3465493-2
le soucis c'est que le E et le - sont toujours à la même places mais les chiffres eux ne sont jamais les même
je sais rechercher une chaine de caractere comme cela

$Test = StringInStr($Num, "E3465493-2")

mais dans le cas ou les chiffres changent mis a part le E et le - la je sèche

Merci d'avance pour votre aide

Yohan

Re: recherche d'une chaine de caractere comportant deux caracteres specifique

Posté : mar. 22 janv. 2019 13:32
par jchd
Voici une façon :

Code : Tout sélectionner

Local $sTexte = "Blah blah E123-3 blahE3465493-2blah E34653-25879014 blah E1324-123 blah E123456789-3 blah e13245-13 blah"
; extraction de toute séquence comportant :
; la lettre 'E' suivi d'au minimum 4 à 8 chiffres au maximum suivi du caractère '-' suivi de 1 à 3 chiffres au plus
Local $aRes = StringRegExp($sTexte, "(E\d{4,8}-\d{1,3}(?!\d))", 3)
_ArrayDisplay($aRes)

; extraction de toute séquence comportant :
; la lettre 'E' suivi de 7 chiffres exactement suivi du caractère '-' suivi de 1 chiffre exactement
$aRes = StringRegExp($sTexte, "(E\d{7}-\d(?!\d))", 3)
_ArrayDisplay($aRes)

Re: recherche d'une chaine de caractere comportant deux caracteres specifique

Posté : lun. 28 janv. 2019 09:13
par yohanb767
merci jchd !

c'est exactement ce que je cherche

bonne journée à toi