如何在第三个变量中混合两个不同长度的变量? Variable1有48个条目,variable2有16个条目。变量3应该在变量1的每第三行之后具有每四行中变量2的条目。 两个变量的长度可能不同,但总是可被3整除。
$i = 0 ; $var3 = $var1 | % { "$_ $($var2[$i])"; $i++ }
不起作用,因为它适用于相同长度的变量
实施例:
$ Var1(48个条目)
名1
LOCATION1
国家1
名称2
LOCATION2
COUNTRY2
。
。
Name16
Location16
Country16
$ Var2(16个条目)
日期1
DATE2
。
。
Date16
$ Var3(应该有64个条目)
名1
LOCATION1
国家1
日期1
。
。
Name16
Location16
Country16
Date16
答案 0 :(得分:0)
我假设$var1
和$var2
是数组,并且"条目"是每个元素。
如果我必须使用您用来存储变量的方法,我就这样做:
$var1 = @('Name1','Location1','Country1','Name2','Location2','Country2','Name3','Location3',
'Country3','Name4','Location4','Country4','Name5','Location5','Country5','Name6','Location6',
'Country6','Name7','Location7','Country7','Name8','Location8','Country8','Name9','Location9',
'Country9','Name10','Location10','Country10','Name11','Location11','Country11','Name12',
'Location12','Country12','Name13','Location13','Country13','Name14','Location14','Country14',
'Name15','Location15','Country15','Name16','Location16','Country16');
$var2 = @('Date1','Date2','Date3','Date4','Date5','Date6','Date7','Date8','Date9','Date10',
'Date11','Date12','Date13','Date14','Date15','Date16');
$var3 = @();
for ($i = 0; $i -lt $var2.Count; $i++) {
$var3 += $var1[$i * 3];
$var3 += $var1[($i * 3) + 1];
$var3 += $var1[($i * 3) + 2];
$var3 += $var2[$i];
}
实际上,我可能会将其存储为散列表数组,或者作为元组存储在PSObject/PSCustomObject中。天啊,我甚至可能更喜欢building a DataTable到平面阵列。