Powershell从带引号的字符串生成数组

Powershell从带引号的字符串生成数组,powershell,Powershell,我有以下输入作为字符串 [string]$str = "'str01' 'str02' 'str03' 'str04' 'str05'" 想要输出为数组吗 $arr[0] = str01 $arr[1] = str02 $arr[2] = str03 $arr[3] = str04 $arr[4] = str05 任何帮助[string]$str=“'str01''str02''str03''str04''str05'' [string[]$arr=$str.Split

我有以下输入作为字符串

[string]$str = "'str01' 'str02' 'str03' 'str04' 'str05'"
想要输出为数组吗

$arr[0] = str01
$arr[1] = str02
$arr[2] = str03
$arr[3] = str04
$arr[4] = str05 
任何帮助

[string]$str=“'str01''str02''str03''str04''str05''
[string[]$arr=$str.Split(“”)。替换(“”,“”)
$arr
输出

str01
str02
str03
str04
str05

您在对@AliReza回答的评论中提到,您的数据中可能也有空格

在不了解数据格式的完整规范的情况下,很难给出适用于所有情况的完整答案,但另一种选择可能是使用撇号拆分,然后选择其他项:

PS>$str=“'str 01''str 02''str 03''str 04''str 05''
PS>$i=0$str.Split(“”)|其中对象{$i%2-eq 1;$i++}
str 01
str 02
str 03
str 04
str 05

如果您的数据可能也包含撇号,那么您需要给出一个包含撇号的示例,这样我们就可以看到它们是如何在数据中转义的,而不是作为分隔符进行匹配的。

到目前为止您尝试了什么?请分享你的代码?输出的目的是什么?只是为了在控制台中有像素吗?你试过运算符了吗?但是如果像“'str 01''str 02''str 03''str 04''str 05''这样的字符串之间有空格,@mclayton回答了这个问题。[regex]::matches($str,”(?