我有一个PowerShell-Object $foo
,它有两个属性:Column
和Row
。每个属性都包含一个项目数组:
$foo.Column
{Cost, UsageDate, Currency}
$foo.Row
{120, 20230301, USD, 150, 20230302, USD, 200, 20230303, USD ... }
我如何从它得到一个PS-CustomObject $bar
,看起来像这样
$bar | Format-Table
Cost UsageDate Currency
---- --------- --------
120 20230301 USD
150 20230302 USD
200 20230302 USD
4条答案
按热度按时间i2loujxw1#
如果这就是
$foo
对象的样子,可以像下面这样做然后将数据创建为PsCustomObject:
甚至
输出:
aamkag612#
你可以使用
for
循环在Rows和Columns以及一个有序字典之间顺序迭代来创建一个新对象。例如:如果对象有多行,则需要更改逻辑:
bvk5enib3#
一个避免递增索引的一行程序如何?
创建一个
.csv
的多行字符串,并将其通过管道传输到ConvertFrom-Csv
。实际应用:
-replace
运算符的match表达式使用正向前查找,只匹配后面跟有以下字符的逗号:<digits>,<8 digits>,<3 letters>
并将其替换为换行符,创建
.csv
的行。因此,唯一真实的的脑力工作是创建将匹配整行数据的正则表达式。
zzlelutf4#
谢谢你们!我是这样解决的:
首先创建一个空对象:
将标题添加到对象
将行添加到对象:
并将其转换为: