将字符串附加到数组的每个项目

时间:2017-01-01 00:04:16

标签: arrays powershell append

我有一个数组,当我尝试向其追加一个字符串时,数组会转换为单个字符串。

我在数组中有以下数据:

$Str  
451 CAR,-3 ,7 ,10 ,0 ,3 , 20 ,Over: 41  
452 DEN «,40.5,0,7,0,14, 21 ,  Cover: 4  

我希望在这个例子中附加游戏周,如下所示:

$Str = "Week"+$Week+$Str 

我得到一个字符串:

Week16101,NYG,42.5 ,3 ,10 ,3 ,3 , 19 ,Over 43 102,PHI,-  1,14,7,0,3, 24 ,  Cover 4 103,

当然,我希望每一行都有附加内容。

3 个答案:

答案 0 :(得分:4)

您也可以使用Foreach-Object cmdlet(如果您更喜欢使用管道),而不是for循环:

$str = "apple","lemon","toast" 
$str = $str | ForEach-Object {"Week$_"}

<强>输出:

Weekapple
Weeklemon
Weektoast

答案 1 :(得分:2)

这样的东西可用于为文本中的每一行添加/附加文本。

设置数组$ str:

$str = "apple","lemon","toast"

$str
apple
lemon
toast

现在添加文字:

for ($i=0; $i -lt $Str.Count; $i++) {
    $str[$i] = "yogurt" + $str[$i]
}

$str
yogurtapple
yogurtlemon
yogurttoast

这适用于在每行前添加/附加静态文本。如果您需要插入更改变量,则可能需要进行一些修改。我需要查看更多代码才能推荐一些东西。

答案 2 :(得分:0)

PowerShell v4 +的另一个选项

$str = $str.ForEach({ "Week" + $Week + $_ })