PowerShell es un caparazón y un lenguaje de secuencias de comandos. Es como un lenguaje de programación en sí. La secuencia de comandos de PowerShell admite todos los principios principales de la programación, incluidas las cuerdas. La principal diferencia es que los scripts de shell generalmente están diseñados para automatizar tareas sin construir una aplicación dedicada.
En esta guía, trabajaremos con cuerdas en PowerShell. También demostrará cómo dividir una cadena y usar las técnicas en varias situaciones.
Cuerdas en PowerShell
Primero, echemos un vistazo rápido a una cadena de muestra de PowerShell. Desde el shell de PowerShell, ejecute el siguiente comando.
$ $ Helloworld = "El zorro marrón rápido salta sobre el perro perezoso"
Crea una variable temporal "Helloworld" que almacena la cuerda "El zorro marrón rápido salta sobre el perro perezoso". Llamar a la variable devolverá su valor.
$ $ $ Helloworld
Matrices en PowerShell
En la programación, una matriz es una colección secuencial del mismo tipo de elementos. Puede ser de cualquier tipo de datos. Trabajar con una matriz es significativamente simple. Puede atravesar una matriz usando para bucle o while loop. Se conoce el tamaño de una matriz, lo que hace que la tarea sea significativamente más fácil.
Esta sección actuará solo como una introducción preliminar a las matrices. Si tiene experiencia en programación en cualquier otro idioma, entonces esto debería ser más fácil de entender. En el siguiente ejemplo, vamos a crear una variedad de cuerdas.
$ $ HelloArray = "The", "Quick", "Brown", "Fox"
Llamar a la variable "HelloArray" imprimirá todos los elementos de la matriz.
$ $ HelloArray
Puede llamar a un elemento individual de la matriz por su posición en la secuencia.
$ $ HelloArray [0]
Tenga en cuenta que el conteo de posición comienza en 0. Entonces,
Etcétera.
Cadena dividida
Dividir una cadena en una matriz de personajes
Cualquier variable de cadena tendrá una función predeterminada .ToCharArray () que convierte la cadena en una matriz de caracteres unicode. Es parte del .Función de marco neto. PowerShell permite usar varios .Características netas en los scripts.
Convertamos Helloworld en una matriz de personajes.
$ $ Helloworld = "The Quick Brown Fox"
$ $ HelloworlDarray = $ helloworld.ToCharArray ()
Veamos el resultado.
$ $ HelloworlDarray
Podemos verificar los elementos individuales de la matriz.
$ $ HelloworlDarray [0]
$ $ HelloworlDarray [4]
División de cadena basada en delimitador
Cualquier variable de cadena viene con un puñado de funciones incorporadas. Con la ayuda de la función .Split (), podemos dividir una cadena basada en cierto carácter delimitador. Divide una cadena en una matriz de subtruces. Por defecto, utiliza el carácter de espacio blanco como delimitador. Sin embargo, también puede proporcionar un personaje de delimitación personalizado.
Vamos a verlo en acción. Primero, declare nuestra variable de cadena.
$ $ Helloworld = "El zorro marrón rápido salta sobre el perro perezoso"
Ahora, llame al .Dividir() función y almacenar el resultado en una segunda variable.
$ $ Helloworldsplit = $ helloworld.Dividir()
Verifique el resultado de la división.
$ $ Helloworldsplit
Para especificar la división usando un carácter específico, debe pasar el valor como parámetro de función. En el siguiente ejemplo, dividiremos la cadena en función de la coma (,).
$ $ Helloworld = "The, Quick, Brown, Fox"
$ $ HelloworlDarray = $ helloworld.Dividir(",")
$ $ HelloworlDarray
Otra característica interesante es el soporte para Regex (expresión regular). Puede pasar expresiones regulares como parámetro para el .Función split () y tiene un control más fino sobre el resultado.
División de números y alfabetos
En muchos casos, una cadena consistirá en alfabetos y dígitos. Con la ayuda de la bandera "-Split", podemos separar todos los personajes y dígitos en matrices individuales.
Vamos a verlo en acción. Aquí tenemos una cadena alfanumérica.
$ $ Helloworld = "r1a2n3do0m6"
Para obtener solo los alfabetos, usaremos la bandera "-Split". En cuanto al argumento, "\ d" le dice que elimine todos los dígitos.
$ $ HelloworlDarray = $ helloworld -split "\ d"
$ $ HelloworlDarray
Para obtener solo los dígitos, use la bandera "-Split" con el argumento "\ d".
$ $ HelloworlDarray = $ helloworld -split "\ d"
$ $ HelloworlDarray
Misceláneas
Cuerdas de recorte
Varias cuerdas pueden contener caracteres en exceso al comienzo o al final. Podemos eliminarlos usando la función de recorte.
$ "The Quick Brown Fox".Recortar()
También puede especificar qué caracteres recortar.
$ "111000111".Recorte ("1")
Utilizando el .Recortar() la función eliminará los caracteres en exceso tanto al principio como al final. Para recortar solo un lado específico, podemos usar .TrimStart () o .Trimend (). Funcionan tal como sugiere la etiqueta.
$ "111000111".TrimStart ("1")
$ "111000111".Trimend ("1")
Pensamientos finales
Este artículo muestra cómo dividir las cuerdas en PowerShell. Incorpora dos principios de programación: matriz y cadena. Gracias a .Soporte neto, hay varias características disponibles para manipular una cadena. Cubre cómo convertir una cadena en matrices de subcontratos o caracteres.
Esto es sólo la punta del iceberg. PowerShell admite numerosas más formas de interactuar y usar cadenas. Echa un vistazo a estas guías en subcadenas, variedad de cuerdas, cuerdas de concatenación, etc.
Computación feliz!