Bonjour tout le monde !
Je recherche désespérément à traduire en Powershell le code suivant :
Quelqu'un voit t'il comment faire ?Code:preg_match_all('([a-z0-9]{6}-[a-z0-9]{6})', $text, $matches);
D'avance un grand merci et bonne journée !
Version imprimable
Bonjour tout le monde !
Je recherche désespérément à traduire en Powershell le code suivant :
Quelqu'un voit t'il comment faire ?Code:preg_match_all('([a-z0-9]{6}-[a-z0-9]{6})', $text, $matches);
D'avance un grand merci et bonne journée !
Salut,
consulte cette méthode NextMatch.
Un exemple en Powershell.
Bonjour Laurent,
Il fallait effectivement utiliser cette fonction :
Un grand merci pour ton aide précieuse.Code:
1
2
3
4
5
6
7
8
9
10
11
12 $pat = [regex] "[a-z0-9]{6}-[a-z0-9]{6}" $m = $pat.match("blabla blabla 0019bb-2d3614 blabla bla") while ($m.Success) { $m.value $m = $m.NextMatch() }
salut,
si tu veux, tu peux aussi te passer de la boucle while:
Code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21 PS\> $str = "blabla blabla 0019bb-2d3614 blabla bla214145-541258a" PS\> $rex = "[a-z0-9]{6}-[a-z0-9]{6}" Groups : {0019bb-2d3614} Success : True Captures : {0019bb-2d3614} Index : 14 Length : 13 Value : 0019bb-2d3614 Groups : {214145-541258} Success : True Captures : {214145-541258} Index : 38 Length : 13 Value : 214145-541258 PS\> [regex]::Matches($str,$rex) |select -exp value 0019bb-2d3614 214145-541258 PS\>
Hello,
Ta méthode fonctionne également, je la garde sous le coude on ne sait jamais.
Merci à toi.
Joli coup I'm_HERE :ccool:
Si seul le résultat t'importe, le seconde approche, basée sur une méthode statique, est préférable :
De plus elle se rapproche de par sa concision de preg_match_all.Citation:
Les méthodes Matches ne diffèrent des méthodes Match que parce qu'elles retournent la liste des correspondances exactes qui résulteraient d'un appel itératif à match= Match (...) puis à Match.NextMatch (), etc. La collection n'inclut que les correspondances exactes et s'arrête à la première correspondance infructueuse.
un +1 chacun :king:
Messieurs,
Bonjour,
J'ai effectivement utilisée la seconde méthode car elle m'a l'air bien plus propre que ma boucle while :)
Merci encore à vous et bonne journée !