Checking a string is startswith some character(or a string) is common need for every kind of powershell script. We can use the powershell’s like operator with wildcard character to check the startswith string for both case-sensitive and case-insensitive.
The following method is used to check if a string is starts with another string using like operator. By default like operator ignore the case-sensitive check.
$strVal ='Hello world' if($strVal -like 'hello*') { Write-Host 'Your string is start with hello' } else { Write-Host 'Your string does not start with hello"' }
To perform a Case-Sensitive comparison just prefix the word “c” with like operator (“clike”).
$strVal ='Hello world' if($strVal -clike 'Hello*') { Write-Host 'True' } else { Write-Host 'False' }
We can also use the .NET’s string extension function StartsWith to check whether a string is startswith a set of characters.
The following method is used to check if a string is start with other string.
$strVal ='Hello world' if($strVal.StartsWith('Hello')) { Write-Host 'True' } else { Write-Host 'False' }
Use the following method if you want to ignore the case in start with check.
$strVal ='Hello world' if($strVal.StartsWith('hello','CurrentCultureIgnoreCase')) { Write-Host 'True' } else { Write-Host 'False' }