Как сделать массив из строки? - PullRequest
0 голосов
/ 01 октября 2019

У меня есть строка [R1A_0001, R1A_0002, R1A_0003, R1A_0004, R1A_0005], которую мне нужно преобразовать в массив в Powershell.

$scripts = "[R1A_0001, R1A_0002, R1A_0003, R1A_0004, R1A_0005]"
Write-Output $scripts
$scripts = $scripts -replace '[\[|\]]','"'
$scripts = $scripts -replace '[,]','","'
$scripts = $scripts -replace '[ ]',''
$scripts = @($scripts)

Я ожидаю получить массив из этого кода, новместо этого я получаю "R1A_0001", "R1A_0002", "R1A_0003", "R1A_0004", "R1A_0005" - все еще строка ... Пожалуйста, помогите

1 Ответ

1 голос
/ 01 октября 2019

Вы можете использовать методы из .net string type:

PS P:\> $scripts = "[R1A_0001, R1A_0002, R1A_0003, R1A_0004, R1A_0005]"
PS P:\> $scripts = $scripts.Replace("[","").Replace("]","").Replace(" ","")
PS P:\> $scriptsCsv = $scripts.Split(",")
PS P:\> $scriptsCsv
R1A_0001
R1A_0002
R1A_0003
R1A_0004
R1A_0005
PS P:\> $scriptsCsv.GetType()

IsPublic IsSerial Name                                     BaseType
-------- -------- ----                                     --------
True     True     String[]                                 System.Array
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...