Come dividere una stringa in due variabili in PowerShell
Se si dispone di una stringa di testo in Microsoft PowerShell, è spesso utile suddividere la stringa in più variabili. Ad esempio, potresti avere il nome e il cognome di un utente separati da uno spazio o un numero di telefono che inizia con un prefisso. È possibile utilizzare la funzione di divisione di PowerShell integrata per eseguire questa operazione. Sono disponibili altre funzioni per fare in modo che PowerShell analizzi una stringa in altri modi.
Informazioni su Microsoft PowerShell
PowerShell è uno strumento da riga di comando e un linguaggio di programmazione fornito da Microsoft. È il sostituto del vecchio strumento di scripting batch di Windows e DOS, che è ancora disponibile anche sulla maggior parte delle versioni di Windows.
Viene spesso utilizzato per combinare l'output di più programmi o per passare dati da un programma all'altro, quindi è utile utilizzarlo per manipolare le stringhe.
La funzione di suddivisione di PowerShell
Se hai una stringa in PowerShell e vuoi dividerla su qualche carattere, puoi farlo usando la Dividi incorporata funzione. O scrivi s -Split, dove s è la variabile che contiene la stringa, o chiama s.split. La funzione restituirà un array contenente ciascuno degli elementi della stringa divisa, che puoi catturare in una variabile come
$a =s.split()
Puoi assegnarli a variabili accedendo ai singoli elementi come $a[0], $a[1] e così via o tenerli nell'array se è più utile.
La divisione delle stringhe è spesso utile quando è necessario suddividere l'input dell'utente o l'output di un altro programma nelle sue parti componenti.
Opzioni di suddivisione di PowerShell
Per impostazione predefinita, PowerShell dividerà la stringa in spazi bianchi, inclusi spazi, interruzioni di riga e tabulazioni. In alcuni casi, potresti voler dividere la stringa su un altro carattere, come una virgola o un trattino, o una stringa come " e."
Per fare ciò, crea il carattere o la stringa desiderati da dividere attorno al secondo argomento nella funzione di divisione, scrivendo s.split(",") o s -split "," per dividere su una virgola, ad esempio. Qualunque carattere tu scelga di dare a PowerShell come delimitatore , o separatore, verrà omesso da tutte le stringhe dei risultati.
Puoi anche scegliere un numero massimo di stringhe in cui dividere fornendo questo come ulteriore argomento. Ad esempio, "a,b,c,d".split(",",2) darà un array con gli elementi "a" e "b,c,d" mentre "a,b,c,d". split(",") darà un array con ogni lettera nella propria stringa.
Tagliare una stringa in PowerShell
Puoi fare in modo che PowerShell riduca una stringa o rimuova i caratteri in eccesso dall'inizio o dalla fine, utilizzando il taglia funzione. Per impostazione predefinita, rimuoverà gli spazi bianchi dall'inizio e dalla fine della stringa.
Ad esempio, " a ".trim() darà il risultato "a." Puoi specificare altri caratteri che vuoi rimuovere dalla stringa come argomento, quindi "^$a ".trim(" ^") darà il risultato "$a."
Puoi utilizzare le funzioni TrimStart e TrimEnd per rimuovere solo i caratteri dall'inizio o dalla fine della stringa.
Questo è spesso utile quando hai dati ottenuti da un utente che li ha digitati in una casella di input con spazi extra o nuove righe alla fine.
La funzione di unione di PowerShell
Come in altri linguaggi di programmazione, join di PowerShell funzione è essenzialmente l'opposto di dividi . Richiede più stringhe e le combina insieme con un determinato delimitatore o senza alcuno spazio.
Ad esempio, -join ("a", "b", "c") darà il risultato "abc", mentre "a", "b", "c" -join " " darà la stringa di risultato "a b c ." Questo può essere utile quando hai più variabili che devi combinare in una per archiviarle in un file, passare a un altro comando o inviare a un utente.