分かりやすく、使いやすく。

文字列の中で変数を展開する方法

スポンサーリンク

PowerShell で文字列の中で変数を展開するには、文字列をダブルクオテーション(")で囲んで、その中で変数名を {} で囲みます。

文字列の中で変数を展開する

サンプルコードと実行結果は次の通りです。

PowerShell(実行可能なサンプルコード)
1
2
3
4
5
6
$str1 = 'PowerShell'
 
# $str1を展開します。
$str2 = "${str1}の使い方"
 
Write-Host $str2 
PowerShellの使い方 

ちなみに変数名を {} で囲まなくても変数を展開することはできますが、この場合 $ の後から次の半角スペースまでを変数名として認識します。半角スペースを入れ忘れると、変数名が誤認識されます。

サンプルコードと実行結果は次の通りです。

PowerShell(実行可能なサンプルコード)
1
2
3
4
5
6
7
8
9
10
11
12
13
$str1 = 'PowerShell'
 
# {}で囲まない場合、$の後からスペースまでを変数名として認識
$str2 = "$str1 の使い方"
 
Write-Host ($str2 + '←変数の展開結果')
 
 
# スペースがない場合、「$str1の使い方」という変数名として認識されてしまう
$str2 = "$str1の使い方"
 
# 「$str1の使い方」という変数は宣言していない為、何も表示されない
Write-Host ($str2 + '←変数の展開結果') 
PowerShell の使い方←変数の展開結果
←変数の展開結果 

文字列の中で変数を展開しない

文字列をシングルクオテーションで囲んだ場合は、変数の内容は展開されません。

サンプルコードと実行結果は次の通りです。

PowerShell(実行可能なサンプルコード)
1
2
3
4
5
6
$str1 = 'PowerShell'
 
# シングルクオテーションの場合、$str1は展開されません。
$str2 = '${str1}の使い方'
 
Write-Host $str2 
${str1}の使い方 
スポンサーリンク
スポンサーリンク