Как читать переменные из строки, используя PowerShell? - PullRequest
0 голосов
/ 01 ноября 2018

У меня есть TXT-файл со следующим текстом:

someCommandName -parameterName1 *abc* -parameterName2 *efg* -parameterName3 *hij* -parameterName4 *klm*

Не могли бы вы посоветовать, как кодировать чтение -parameterName2 и -parameterName4 в переменную в скрипте PowerShell, пожалуйста?

Большое спасибо за помощь, заранее!

1 Ответ

0 голосов
/ 01 ноября 2018

считывает ваш файл в переменную powershell, а затем проверяет его? Затем повторять совпадения или просто использовать совпадения 1 и 3? (массив на основе нуля, поэтому параметр2 равен [1] и т. д.). Примечание. В конце я добавил "", так как это было необходимо для сопоставления шаблона с последним параметром с группировкой, которую я сделал.

PS C:\> $file
someCommandName -parameterName1 abc -parameterName2 efg -parameterName3 hij -par
ameterName4 klm

PS C:\> $line = $file+" "

PS C:\> $regex = [Regex]::new("(.*?)-(.*?)\s+?(.+?)\s+?")

PS C:\> $matches = $regex.Matches($line)

PS C:\> $matches[0]


Groups   : {0, 1, 2, 3}
Success  : True
Name     : 0
Captures : {0}
Index    : 0
Length   : 36
Value    : someCommandName -parameterName1 abc 

PS C:\> $matches[0].Groups[3].ToString()
abc

PS C:\> $matches[1].Groups[3].ToString()
efg

PS C:\> $matches[2].Groups[3].ToString()
hij

PS C:\> $matches[3].Groups[3].ToString()
klm

PS C:\> 
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...