J'ai un souci de ré-écriture d'une expression régulière avec la fonction preg_match_all de PHP en VB.net.

J'ai le texte suivant :

Un homme est toujours {amené|{acheminer|aller|{diriger|marcher}|envoyer}|cheminer} à faire des choix dans sa vie .

Avec le code suivant en PHP :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
preg_match_all('/\{([^{}]*)\}/si', $mytext, $matches)
je retrouve tous les mots contenus dans les accolades (amené, acheminer, aller, diriger, marcher, envoyer, cheminer).

J'ai essayé de réécrire cette fonction en vb.net de la manière suivante :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
Dim matches As System.Text.RegularExpressions.MatchCollection = System.Text.RegularExpressions.Regex.Matches(mytext, "\{([^{}]*)\}", System.Text.RegularExpressions.RegexOptions.IgnoreCase)
Mais cela ne me retourne que la chaine de texte {diriger|marcher} avec testmatches.Count = 1

Ou est l'erreur ?

Merci de votre aide.