Powershell Joins - PullRequest
       10

Powershell Joins

10 голосов
/ 06 марта 2009

Я пытаюсь объединить несколько элементов массива в строку, используя это;

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

Но я получаю сообщение об ошибке "Missing") при вызове метода. В документации по соединению упоминается только объединение всех элементов массива, а не элементов по определенным индексам. Можно ли это сделать?

Приветствия

Andy

Ответы [ 3 ]

13 голосов
/ 06 марта 2009

Оберните содержимое «$ a [0,1,2,3]» с помощью «$ ()» или «()»

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

- или -

Вы можете использовать оператор диапазона ".."

PS> [string]::join("", $a[0..3])
hell
8 голосов
/ 06 марта 2009
PS > & {$ofs=""; "$($a[0,1,2,3])"}  
hell
1 голос
/ 21 марта 2014

Более идиоматично: используйте встроенный оператор объединения PowerShell, например:

PS> $a[0,1,2,3] -join ""
hell
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...