2017-01-01 23 views
2

私は配列を持っています。文字列を追加しようとすると、配列は単一の文字列に変換されます。配列の各項目に文字列を追加する

私は、配列内の次のデータがあります。

$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, 

もちろん、各行にappendを追加したいと思います。

+0

オブザーバーに物事をより明確にするために、名前を "str"とすると、あなたは単なるスカラー文字列変数を持つことになっていると思うかもしれません...ちょっと考えました! –

答えて

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

の代わりに(あなたがパイプラインを使用して好む場合)あなたもForeach-Objectコマンドレットを使用することができますforループ:

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

出力:

Weekapple 
Weeklemon 
Weektoast 
+0

私はこの答えが好きです。 1回限りのシナリオで読むのが簡単で、より良い方法です。しかし、より長い制御が必要な長いスクリプトの場合、私の答えはより適切だと思います。ちょうどアプリケーションに依存します。 –

0

PowerShellのV4 +

するためのもう1つのオプション
$str = $str.ForEach({ "Week" + $Week + $_ }) 
関連する問題