PowerShell: cómo comprobar si la cadena contiene una fecha
Puede utilizar la siguiente sintaxis en PowerShell para comprobar si una cadena contiene una fecha:
[boolean]($my_string -as [DateTime])
Este ejemplo en particular comprueba si la variable de cadena denominada $my_string contiene una fecha y devuelve Verdadero o Falso como resultado.
Así es como funciona esta sintaxis:
Primero, intentamos convertir la variable de cadena denominada $my_string en un objeto DateTime.
Luego usamos el comando [booleano] para forzar que la salida sea Verdadera si la cadena se pudo convertir correctamente a una fecha o Falso. de lo contrario.
El siguiente ejemplo muestra cómo utilizar esta sintaxis en la práctica en varios escenarios diferentes.
Ejemplo: comprobar si la cadena contiene una fecha en PowerShell
Supongamos que creamos varias cadenas denominadas $string1, $string2 y $string3 en PowerShell:
$string1 = "July 4, 2024"
$string2 = "7/4/2024"
$string3 = "Zach"
Podemos utilizar la siguiente sintaxis para comprobar si cada una de estas cadenas contiene una fecha o no:
[boolean]($string1 -as [DateTime])
[boolean]($string2 -as [DateTime])
[boolean]($string3 -as [DateTime])
La siguiente captura de pantalla muestra cómo utilizar esta sintaxis en la práctica:
De la salida podemos ver:
- La cadena “4 de julio de 2024” devuelve Verdadero porque contiene una fecha.
- La cadena “4/7/2024” devuelve Verdadero porque contiene una fecha.
- La cadena “Zach” devuelve Falso porque no contiene una fecha.
Nota: Puede encontrar la documentación completa para el operador -as en PowerShell aquí.
