Convert-String
Da formato a una cadena para que coincida con ejemplos.
Sintaxis
Default (valor predeterminado)
Convert-String
[-Example <System.Collections.Generic.List`1[System.Management.Automation.PSObject]>]
-InputObject <String>
[<CommonParameters>]
Description
El cmdlet Convert-String da formato a una cadena para que coincida con el formato de los ejemplos.
Ejemplos
Ejemplo 1: Convertir el formato de una cadena
"Mu Han", "Jim Hance", "David Ahs", "Kim Akers" | Convert-String -Example "Ed Wilson=Wilson, E."
Han, M.
Hance, J.
Ahs, D.
Akers, K.
El primer comando crea una matriz que contiene los nombres y apellidos.
El segundo comando da formato a los nombres según el ejemplo. Coloca el apellido primero en la salida, seguido de una inicial.
Ejemplo 2: Simplificar el formato de una cadena
$composers = @("Johann Sebastian Bach", "Wolfgang Amadeus Mozart", "Frederic Francois Chopin", "Johannes Brahms")
$composers | Convert-String -Example "first middle last=last, first"
Bach, Johann
Mozart, Wolfgang
Chopin, Frederic
Brahms, Johannes
El primer comando crea una matriz que contiene los nombres primero, intermedio y apellido. Tenga en cuenta que la última entrada no tiene ningún nombre intermedio.
El segundo comando da formato a los nombres según el ejemplo. Coloca primero el apellido en la salida, seguido del nombre. Todos los nombres intermedios quitados; entry sin nombre intermedio se controla correctamente.
Ejemplo 3: Administración de salidas cuando las cadenas no coinciden con el ejemplo
$composers = @("Johann Sebastian Bach", "Wolfgang Amadeus Mozart", "Frederic Francois Chopin", "Johannes Brahms")
$composers | Convert-String -Example "first middle last=middle, first"
Sebastian, Johann
Amadeus, Wolfgang
Francois, Frederic
El primer comando crea una matriz que contiene los nombres primero, intermedio y apellido. Tenga en cuenta que la última entrada no tiene ningún nombre intermedio.
El segundo comando da formato a los nombres según el ejemplo. Coloca el nombre intermedio primero en la salida, seguido del nombre. La última entrada de $Composers se omite porque no coincide con el patrón de muestra: no tiene segundo nombre.
Ejemplo 4: Precaución con espacios de belleza
$composers = @("Antonio Vivaldi", "Richard Wagner ", "Franz Schubert", "Johannes Brahms ")
$composers | Convert-String -Example "Patti Fuller = Fuller, P."
Wagner, R.
Brahms, J.
El primer comando crea una matriz de nombres y apellidos. Tenga en cuenta que los elementos segundo y cuarto tienen un espacio final adicional, después del apellido.
El segundo comando convierte todas las cadenas que coincidan con el patrón de muestra: palabra, espacio, palabra y espacio final final, todo esto antes del signo igual. Además, tenga en cuenta el espacio inicial en la salida.
Ejemplo 5: Dar formato a la información del proceso con varios patrones
$ExamplePatterns = @(
@{before='"Hello","World"'; after='World: Hello'},
@{before='"Hello","1"'; after='1: Hello'},
@{before='"Hello-World","22"'; after='22: Hello-World'},
@{before='"hello world","333"'; after='333: hello world'}
)
$Processes = Get-Process | Select-Object -Property ProcessName, Id | ConvertTo-Csv -NoTypeInformation
$Processes | Convert-String -Example $ExamplePatterns
Id: ProcessName
4368: AGSService
8896: Amazon Music Helper
4420: AppleMobileDeviceService
...
11140: git-bash
0: Idle
...
56: Secure System
...
13028: WmiPrvSE
2724: WUDFHost
2980: WUDFHost
3348: WUDFHost
$ExamplePatterns define diferentes patrones esperados en los datos, a través de ejemplos.
El primer patrón, @{before='"Hello","World"'; after='World: Hello'}, se lee de la siguiente manera: espere cadenas en las que una palabra viene encerrada entre comillas dobles, luego una coma,y luego la segunda y última palabra entre comillas;sin espacios en la cadena. En la salida: coloque primero la segunda palabra,sin comillas, luego un solo espacio y luego la primera palabra, sin comillas.
El segundo patrón, @{before='"Hello","1"'; after='1: Hello'}, se lee de la siguiente manera: espere cadenas en las que una palabra viene entre comillas dobles, luego una comay luego un número entre comillas;sin espacios en la cadena. En la salida: coloque primero el número,sin comillas, luego un solo espacio y luego la palabra, sin comillas.
El tercer patrón, @{before='"Hello-World","22"'; after='22: Hello-World'}, se lee de la siguiente manera: espere cadenas en las que dos palabras con un guión en el medio van encerradas entrecomillas dobles, luego una coma y luego un número encerrado entre comillas;sin espacios entre la coma y la tercera comilla doble.En la salida: coloque primero el número, sin comillas, luego un solo espacioy luego las palabras con guión, sin comillas.
El cuarto y último patrón, @{before='"hello world","333"'; after='333: hello world'}, se lee de la siguiente manera: espere cadenas en las que dos palabras con un espacio entre ellas van encerradas entrecomillas dobles, luego una coma y luego un número entre comillas;sin espacios entre la coma y la tercera comilla doble.En la salida: coloque primero el número, sin comillas, luego un solo espacioy luego las palabras con el espacio intermedio, sin comillas.
El primer comando obtiene todos los procesos mediante el cmdlet Get-Process. El comando los pasa al cmdlet Select-Object, que selecciona el nombre del proceso y el identificador de proceso. Al final de la canalización, el comando convierte la salida en valores separados por comas, sin información de tipo, mediante el cmdlet ConvertTo-Csv. El comando almacena los resultados en la variable $Processes. $Processes ahora contiene nombres de proceso y PID.
El segundo comando especifica una variable de ejemplo que cambia el orden de los elementos de entrada. El comando encubre cada cadena en $Processes.
Nota El cuarto patrón dice implícitamente que dos o más palabras separadas por espacios coinciden.
Sin el cuarto patrón, solo se coincide con la primera palabra de la cadena entre comillas dobles.
Parámetros
-Example
Especifica una lista de ejemplos del formato de destino. Especifique pares separados por el signo igual (=), con el patrón de origen a la izquierda y el patrón de destino a la derecha, como en los ejemplos siguientes:
-Example "Hello World=World, Hello"-Example "Hello World=World: Hello",'"Hello","1"=1: Hello'
Nota En el segundo ejemplo se utiliza una lista de patrones
Como alternativa, especifique una lista de tablas hash que contengan propiedades Before y After.
-Example @{before='"Hello","World"'; after='World: Hello'}, @{before='"Hello","1"'; after='1: Hello'}
Cautela Evite usar espacios alrededor del signo igual, ya que se tratan como parte del patrón.
Propiedades de parámetro
| Tipo: | |
| Valor predeterminado: | None |
| Admite caracteres comodín: | False |
| DontShow: | False |
| Alias: | E |
Conjuntos de parámetros
(All)
| Posición: | Named |
| Obligatorio: | False |
| Valor de la canalización: | False |
| Valor de la canalización por nombre de propiedad: | False |
| Valor de los argumentos restantes: | False |
-InputObject
Especifica una cadena a la que se va a dar formato.
Propiedades de parámetro
| Tipo: | String |
| Valor predeterminado: | None |
| Admite caracteres comodín: | False |
| DontShow: | False |
Conjuntos de parámetros
(All)
| Posición: | Named |
| Obligatorio: | True |
| Valor de la canalización: | True |
| Valor de la canalización por nombre de propiedad: | False |
| Valor de los argumentos restantes: | False |
CommonParameters
Este cmdlet admite los parámetros comunes: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction y -WarningVariable. Para obtener más información, vea about_CommonParameters.
Entradas
String
Puede canalizar cadenas a este cmdlet.
Salidas
String
Este cmdlet devuelve una cadena.