PowerShell,文字列の先頭が、指定した文字列と同じか比較

スポンサーリンク

鍛錬 615

PowerShell,文字列の先頭が、指定した文字列と同じか比較する

文字列の先頭が、指定した文字列と同じか比較・確認するには、.NETオブジェクトにおける String クラスのインスタンスメソッド、StartsWith を使用します。
 
使用方法は、以下に示す通りです。

比較対象の文字列.StartsWith(比較する文字列)

引数

以下は、上記の引数についてです。

引数
比較する文字列 String

戻り値

以下は、戻り値についてです。

戻り値
先頭が一致していた場合 True Boolean
先頭が一致していなかった場合 False Boolean
 
スポンサーリンク

スクリプト

以下は、文字列の先頭が指定した文字列と一致しているのかを比較するスクリプト、check_start.ps1 です。

今回は、文字列「XXXYYYZZZ」の先頭文字列について比較しています。

比較対象の文字列
XXXYYYZZZ
比較する先頭文字列(1) 比較する先頭文字列(2)
XXX YYY
# 変数初期化
[System.String]$str = $null
[System.String]$cmp_str = $null
[System.Boolean]$result = $false

# 比較対象の文字列を格納
$str = "XXXYYYZZZ"

# 比較する先頭文字列を格納
$cmp_str = "XXX"

# 先頭文字列を比較
$result = $str.StartsWith($cmp_str)

# 先頭の文字列が一致する場合
if ($result -eq $true) {
	echo "文字列[$cmp_str]は、文字列[$str]の先頭と一致する。"
}
# 先頭の文字列が一致しない場合
else {
	echo "文字列[$cmp_str]は、文字列[$str]の先頭と一致しない。"
}

# ----------------------------------------------------------------

# 比較対象の文字列を格納
$str = "XXXYYYZZZ"

# 比較する先頭文字列を格納
$cmp_str = "YYY"

# 先頭文字列を比較
$result = $str.StartsWith($cmp_str)

# 先頭の文字列が一致する場合
if ($result -eq $true) {
	echo "文字列[$cmp_str]は、文字列[$str]の先頭と一致する。"
}
# 先頭の文字列が一致しない場合
else {
	echo "文字列[$cmp_str]は、文字列[$str]の先頭と一致しない。"
}

実行結果

以下は、スクリプト check_start.ps1 を実行しています。

PS D:\tmp>
PS D:\tmp> .\left_pad.ps1
文字列[XXX]は、文字列[XXXYYYZZZ]の先頭と一致する。
文字列[YYY]は、文字列[XXXYYYZZZ]の先頭と一致しない。

 
上記に示した通り、文字列の先頭が指定した文字列と一致するのかを比較することができました。

スポンサーリンク

シェアする

フォローする