Powershell 将逗号分隔的字符串转换为列表

Powershell 将逗号分隔的字符串转换为列表,powershell,Powershell,我有以下powershell代码: $Credentials = 'Credentials: myacct1,myacct2' $runtimes = $Credentials -match "Credentials: (?<content>.*)" $runtimeList = $matches['content'] Foreach ($runtime in $runtimeList) { Write-Host $runtime } 我很确定您只需要使用string.s

我有以下powershell代码:

$Credentials = 'Credentials: myacct1,myacct2'

$runtimes = $Credentials -match "Credentials: (?<content>.*)"
$runtimeList = $matches['content']
Foreach ($runtime in $runtimeList)
{
    Write-Host $runtime
}

我很确定您只需要使用string.split将匹配的字符串拆分为


我很确定您只需要使用string.split将匹配的字符串拆分为


要提供更具PowerShell风格的解决方案,请执行以下操作:

PS> 'Credentials: myacct1,myacct2' -replace '^Credentials: ' -split ','
myacct1
myacct2
-替换“^Credentials:”从字符串中删除前缀凭据:将其替换为隐含的空字符串。 -split',将剩余字符串拆分为一个令牌数组,
要提供更具PowerShell风格的解决方案,请执行以下操作:

PS> 'Credentials: myacct1,myacct2' -replace '^Credentials: ' -split ','
myacct1
myacct2
-替换“^Credentials:”从字符串中删除前缀凭据:将其替换为隐含的空字符串。 -split',将剩余字符串拆分为一个令牌数组,
你说对了!我实际上同时发现了,但这也是正确的。我做了以下$runtimeList=$matches['content']-split','如果不包含空格或其他特殊字符,您可以将命名的捕获组视为属性:$runtimeList=$matches.content.split,+1您知道了!我实际上同时发现了,但这也是正确的。我执行了以下$runtimeList=$matches['content']-split',“如果不包含空格或其他特殊字符,则可以将命名的捕获组视为属性:$runtimeList=$matches.content.split,+1or-split'[1]-split','or-split'[1]-split','
PS> 'Credentials: myacct1,myacct2' -replace '^Credentials: ' -split ','
myacct1
myacct2