PowerShell 大文字と小文字を変換(ToLower/ToUpper)

PowerShellの英字の大文字と小文字を変換するサンプルです。

目次

サンプル 英字の大文字を小文字にする(ToLower)
  英字の小文字を大文字にする(ToUpper)
先頭の文字のみ大文字にする
最初の文字を大文字にして他の文字を小文字にする
大文字を小文字にし、小文字を大文字にする

英字の大文字を小文字にする(ToLower)

文字列.ToLower()
  • ToLowerメソッドは、英字の大文字を小文字にします。
  • 英字の全角の大文字も全角の小文字に変換されます。
$str1 =  "ABC"
Write-Host ($str1.ToLower()) # abc

$str2 =  "Abc"
Write-Host ($str2.ToLower()) # abc

$str3 =  "ABC"
Write-Host ($str3.ToLower()) # abc

$str4 =  "あいう"
Write-Host ($str4.ToLower()) # あいう

全角の英字の大文字は、全角の英字の小文字に変換します。

 

英字の小文字を大文字にする(ToUpper)

文字列.ToUpper()
  • ToUpperメソッドは、英字の小文字を大文字にします。
  • 英字の全角の小文字も全角の大文字に変換されます。
$str1 =  "abc"
Write-Host ($str1.ToUpper()) # ABC

$str2 =  "Abc"
Write-Host ($str2.ToUpper()) # ABC

$str3 =  "abc"
Write-Host ($str3.ToUpper()) # ABC

$str4 =  "あいう"
Write-Host ($str4.ToUpper()) # あいう

全角の英字の小文字は、全角の英字の大文字に変換します。

 

先頭の文字のみ大文字にする

$str1 =  "abcde"
Write-Host ($str1.Substring(0, 1).ToUpper() + $str1.Substring(1)) # Abcde

$str2 =  "AbcDE"
Write-Host ($str2.Substring(0, 1).ToUpper() + $str2.Substring(1)) # AbcDE

Substringの引数が2つの場合は、1つめの引数は開始位置で2つめの引数は長さです。
Substringの引数が1つの場合は、指定した位置の文字から最後の文字まで取得します。
5行目は、後ろ2つの文字は大文字のままです。

 

最初の文字を大文字にして他の文字を小文字にする

$str1 =  "abcde"
Write-Host ($str1.Substring(0, 1).ToUpper() + $str1.Substring(1).ToLower()) # Abcde

$str2 =  "AbcDE"
Write-Host ($str2.Substring(0, 1).ToUpper() + $str2.Substring(1).ToLower()) # Abcde

Substringの引数が2つの場合は、1つめの引数は開始位置で2つめの引数は長さです。
Substringの引数が1つの場合は、指定した位置の文字から最後の文字まで取得します。
5行目は、後ろ2つの文字も小文字になっています。

 

大文字を小文字にし、小文字を大文字にする

$str1 =  "AbCdEfg"
$str2 =  ""

for ($i = 0; $i -lt $str1.Length; $i++) {
	If ($str1.Substring($i, 1)  -ceq  $str1.Substring($i, 1).ToLower()){
		$str2 = $str2 + $str1.Substring($i, 1).ToUpper()
    }Else{
		$str2 = $str2 + $str1.Substring($i, 1).ToLower()
	}
}
Write-Host ($str2) # aBcDeFG

for文のループで文字列を1文字ずつみていきます。
if文で小文字か判定しtrueであれば大文字に、そうでなければ小文字に変換します。

関連の記事

PowerShell if文のサンプル

△上に戻る