Hvis du har en tekststreng i Microsoft PowerShell, er det ofte nyttigt at opdele strengen i flere variabler.
Billedkredit: dusanpetkovic/iStock/GettyImages
Hvis du har en tekststreng i Microsoft PowerShell, er det ofte nyttigt at opdele strengen i flere variabler. For eksempel kan du have en brugers fornavn og efternavn adskilt af et mellemrum eller et telefonnummer, der begynder med et områdenummer. Du kan bruge den indbyggede PowerShell Split-funktion til at gøre dette. Andre funktioner er tilgængelige for at få PowerShell til at parse en streng på andre måder.
Forståelse af Microsoft PowerShell
PowerShell er et kommandolinjeværktøj og programmeringssprog leveret af Microsoft. Det er erstatningen til det ældre Windows- og DOS-batchscriptværktøj, som også stadig er tilgængeligt på de fleste versioner af Windows.
Dagens video
Det bruges ofte til at kombinere output fra flere programmer eller overføre data fra et program til et andet, så det er nyttigt at bruge det til at manipulere strenge.
PowerShell Split-funktionen
Hvis du har en streng i PowerShell og ønsker at opdele den på et eller andet tegn, kan du gøre det ved at bruge den indbyggede Dele fungere. Skriv enten s -Split, hvor s er variablen, der indeholder strengen, eller kald s.split. Funktionen returnerer et array, der indeholder hvert af elementerne i den delte streng, som du kan fange i en variabel som f.eks.
$a = s.split()
Du kan tildele disse til variabler ved at få adgang til de individuelle elementer som $a[0], $a[1] og så videre eller beholde dem i arrayet, hvis det er mere nyttigt.
Opdeling af strenge er ofte nyttigt, når du skal bryde brugerinput eller output fra et andet program i dets komponentdele.
PowerShell Split Options
Som standard vil PowerShell opdele strengen på mellemrumstegn, inklusive mellemrum, linjeskift og tabulatorer. I nogle tilfælde vil du måske opdele strengen på et andet tegn, såsom et komma eller bindestreg, eller en streng såsom " og."
For at gøre dette skal du lave det ønskede tegn eller streng til at opdele omkring det andet argument til splitfunktionen, ved at skrive s.split(",") eller s -split "," for at opdele på et komma, for eksempel. Uanset hvilken karakter du vælger at give til PowerShell som afgrænsning, eller separator, vil blive udeladt fra alle resultatstrengene.
Du kan også vælge en maksimalt antal strenge at opdele i ved at give dette som et yderligere argument. For eksempel vil "a, b, c, d".split(",",2) give en matrix med elementerne "a" og "b, c, d", mens "a, b, c, d". split(",") vil give et array med hvert bogstav i sin egen streng.
Trimning af en streng i PowerShell
Du kan få PowerShell til at trimme en streng eller fjerne overskydende tegn fra starten eller slutningen ved at bruge trimme fungere. Som standard vil det fjerne mellemrum fra begyndelsen og slutningen af strengen.
For eksempel vil " a ".trim() give resultatet "a." Du kan angive andre tegn, du ønsker skal fjernes fra strengen som et argument, så "^$a ".trim(" ^") vil give resultatet "$a."
Du kan bruge funktionerne TrimStart og TrimEnd til kun at fjerne tegn fra begyndelsen eller slutningen af strengen.
Dette er ofte nyttigt, når du har data hentet fra en bruger, der har indtastet det i en inputboks med ekstra mellemrum eller linjeskift i slutningen.
PowerShell Join-funktionen
Som i andre programmeringssprog, PowerShell's tilslutte funktion er i bund og grund det modsatte af dele. Det tager flere strenge og kombinerer dem med en given afgrænsning eller helt uden mellemrum.
For eksempel vil -join ("a","b","c") give resultatet "abc," mens "a","b","c" -join " " vil give resultatstrengen "ab c ." Dette kan være nyttigt, når du har flere variabler, som du skal kombinere til én for at gemme i en fil, videregive til en anden kommando eller udlæse til en bruger.