2009-03-06 10 views
10

Je tente de joindre un certain nombre d'éléments d'un tableau dans une chaîne en utilisant ceci;Powershell joint

$a = "h","e","l","l","o" 
$b = [string]::join("", $a[0,1,2,3]) 

Mais j'obtiens une erreur 'manquant') 'dans l'appel de méthode'. La documentation de jointure mentionne seulement joindre tous les éléments d'un tableau, pas des éléments aux index spécifiques. Cela peut-il être fait?

Vive

Andy

Répondre

13

Enroulez le contenu de "$ a [0,1,2,3]" avec "$()" ou "()"

PS> [string]::join("", $($a[0,1,2,3])) 
hell 
PS> [string]::join("", ($a[0,1,2,3])) 
hell 

- - Ou -

vous pouvez utiliser l'opérateur de gamme ".."

PS> [string]::join("", $a[0..3]) 
hell 
+0

Vive Sung, thats génial! –

8
PS > & {$ofs=""; "$($a[0,1,2,3])"} 
hell 
1

Plus idiomatiques: utiliser intégré de PowerShell rejoindre l'opérateur comme ceci:

PS> $a[0,1,2,3] -join "" 
hell