我有一个数组,数据用逗号分隔。我需要转置它,这样每行逗号前的第一部分用分隔符连接在一起,成为一行,第二部分也是这样。例如:
AC-2.22,CCI-000012
AC-5.1,CCI-000036
AC-5.3,CCI-001380
我想有两个独立的变量,如下所示:
variable 1 = AC-2.22; AC-5.1; AC-5.3
Variable 2 = CCI-000012; CCI-000036; CCI-001380
我知道这应该很简单,但是我已经盯着代码看了一整天了,我只想去吃晚饭,然后睡觉。
先谢了
2条答案
按热度按时间rqqzpn5f1#
根据**Santiago Squarzon**中有用答案的
$array
,您还可以使用ConvertFrom-Csv
cmdlet通过member-access enumeration转置数据:nimxete22#
使用
.Where
方法和Split
模式并不难:由于Member-Access Enumeration,
.Split
method可以在这种情况下工作,因为数组没有.Split
方法,对数组的每个元素调用相同的方法:对任何对象使用成员访问运算符,并且该对象上存在指定的成员时,将调用该成员。对于属性成员,运算符返回该属性的值。对于方法成员,运算符调用对象上的该方法。
对不具有指定成员的列表集合对象使用成员访问运算符时,PowerShell会自动枚举该集合中的项,并对每个枚举项使用成员访问运算符。