Powershell – Comprobar si una cadena comienza con IgnoreCase
Comprobar que una cadena comienza con algún carácter (o una cadena) es una necesidad común para todo tipo de script de powershell. Podemos utilizar el operador like de powershell con el carácter comodín para comprobar la cadena startswith tanto para distinguir entre mayúsculas y minúsculas.
El siguiente método se utiliza para comprobar si una cadena comienza con otra cadena utilizando el operador like. Por defecto el operador like ignora la comprobación de distinción de mayúsculas y minúsculas.
$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"'}
Para realizar una comparación de distinción de mayúsculas y minúsculas basta con anteponer la palabra «c» al operador like («clike»).
$strVal ='Hello world'if($strVal -clike 'Hello*') { Write-Host 'True'} else { Write-Host 'False'}
También podemos utilizar la función de extensión de cadenas de .NET StartsWith para comprobar si una cadena empieza con un conjunto de caracteres.
El siguiente método se utiliza para comprobar si una cadena comienza con otra cadena.
$strVal ='Hello world'if($strVal.StartsWith('Hello')) { Write-Host 'True'} else { Write-Host 'False'}
Utiliza el siguiente método si quieres ignorar las mayúsculas y minúsculas en la comprobación de start with.
$strVal ='Hello world'if($strVal.StartsWith('hello','CurrentCultureIgnoreCase')) { Write-Host 'True'} else { Write-Host 'False'}