PowerShellのReplaceを使用して、文字列を置換する方法を解説します。
はじめに
PowerShellで文字列を置換する方法は、様々な方法があります。
ここでは、下記の2つの方法を説明していきます。
.Replace | -replace | |
---|---|---|
大文字・小文字 | 区別する | 区別しない |
正規表現 | 使えない | 使える |
[.Replace]の使い方
ここでは、[.Replace]の使用方法について説明します。
書式
"文字列".Replace(置換元の文字列, 置換後の文字列)
シンプルに文字列を置き換える
ここでは、.Replaceを使用して、シンプルに文字列を置き換える方法を説明します。
以下はサンプルのソースコードで、置換処理を2パターン記述しています。
1つ目は、文字列を置換しつつ、変数[str1]に格納しています。
2つ目は、変数[str2]に格納している文字列を、置換しつつ、再度変数に格納しています。
$str1 = "ABCABCABC".Replace("A", "あ") Write-Host $str1 $str2 = "XYZXYZXYZ" $str2 = $str2.Replace("Z", "い") Write-Host $str2
下記は実行結果です。
1つ目の置換処理で、全ての「A」が「あ」に、
2つ目で、全ての「Z」が「い」に、置き換わったことが分かります。
あBCあBCあBC XYいXYいXYい
大文字小文字を区別した置換
ここでは、.Replaceを使用し、大文字・小文字を区別した置換を行う方法を説明します。
以下のサンプルでは、「a」を「Z」に置換する処理を記述しています。
$str = "ABCabcABC".Replace("a", "Z") Write-Host $str
下記は、実行結果です。
小文字である「a」だけが、「Z」に置き換わっており、
大文字である「A」は、そのままなので、大文字・小文字が区別されていることが分かります。
ABCZbcABC
[-replace]の使い方
ここでは、[-replace]の使用方法について説明します。
書式
"文字列" -replace 置換元の文字列,置換後の文字列
シンプルに文字列を置き換える
ここでは、-replaceを使用して、シンプルに文字列を置き換える方法を説明します。
以下はサンプルのソースコードで、置換処理を2パターン記述しています。
1つ目は、文字列を置換しつつ、変数[str1]に格納しています。
2つ目は、変数[str2]に格納している文字列を、置換しつつ、再度変数に格納しています。
$str1 = "ABCABCABC" -replace "A","あ" Write-Host $str1 $str2 = "XYZXYZXYZ" $str2 = $str2 -replace "Z","い" Write-Host $str2
下記は実行結果です。
1つ目の置換処理で、全ての「A」が「あ」に、
2つ目で、全ての「Z」が「い」に、置き換わったことが分かります。
あBCあBCあBC XYいXYいXYい
大文字小文字を区別せずに置換
ここでは、-replaceを使用し、大文字・小文字を区別せずに置換を行う方法を説明します。
以下のサンプルでは、「a」を「Z」に置換する処理を記述しています。
$str = "ABCabcABC" -replace "a","Z" Write-Host $str
下記は、実行結果です。
置換元の文字列として「a」を指定していますが、大文字である「A」も置き換わっており、
大文字、小文字が区別されていないことが分かります。
ZBCZbcZBC
正規表現を使用した置換
ここでは、-replaceを使用し、正規表現を用いて置換する方法を説明します。
以下のサンプルでは、3桁の数字を「★」に置換する処理を記述しています。
$str = "abc123あいう" -replace "[0-9]{3}","★" Write-Host $str
下記は、実行結果です。
数字が「★」に置き換わり、正規表現が使用されていることが分かります。
abc★あいう
コメント