【PowerShell】指定の文字列が先頭、または後方にあるかを調べる(前方一致、後方一致)

PowerShell

指定の文字列が先頭にあるかを調べる(IndexOf)

とある文字列に対し、指定した先頭にあるか(前方一致)を調べるには「StartsWith」または「like」を使用します。

$targetString = "testhogehoge"

# 文字列が「test」で始まるかどうかの判定(StartsWithを使う)
if ($targetString.StartsWith("test")) {
    Write-Host "文字列は「test」で始まっています。"
} else {
    Write-Host "文字列は「test」で始まっていません。"
}

# 文字列が「test」で始まるかどうかの判定(likeを使う)
if ($targetString -like "test*") {
    Write-Host "文字列は「test」で始まっています。"
} else {
    Write-Host "文字列は「test」で始まっていません。"
}

 

 

指定の文字列が後方にあるかを調べる(IndexOf)

とある文字列に対し、指定した後方にあるか(後方一致)を調べるには「EndsWith」または「like」を使用します。

$targetString = "hogehogetest"

# 文字列が「test」で終わるかどうかの判定(EndsWithを使う)
if ($targetString.EndsWith("test")) {
    Write-Host "文字列は「test」で終わっています。"
} else {
    Write-Host "文字列は「test」で終わっていません。"
}

# 文字列が「test」で終わるかどうかの判定(likeを使う)
if ($targetString -like "*test") {
    Write-Host "文字列は「test」で終わっています。"
} else {
    Write-Host "文字列は「test」で終わっていません。"
}