Bonjour à tous, je souhaiterais votre aide afin de comprendre un petit problème rencontré avec une regex
Quand je fais
je filtre bien les lignes qui m'intéressent c'est à dire quand il y a au moins une des balises 3 et4, mais le problème vient de la récupération des valeurs
Code : Sélectionner tout - Visualiser dans une fenêtre à part if ( $_ =~ /<(R_.*)\s+.*"><balise1>(.*)<\/balise1><balise2>(.*)<\/balise2>.*?(?:<balise3>(.+?)<\/balise3>)?.*?(?:<balise4>(.+?)<\/balise4>)?/ )
Je récupère sans problème $1, $2 et $3 mais $4 et $5 reste 'unitilized'
Apparemment ça provient du fait que les balises soient facultatives mais j'ai pas trouvé pourquoi et j'aimerais bien comprendre.
D'avance merci pour votre aide
Partager