PowerShell Concatenate String

PowerShell Concatenate String
PowerShell Scripting er en av de mest verdifulle ferdighetene enhver systemadministrator kan ha. Det gir mulighet for å lage enkle til komplekse verktøy som kan automatisere oppgaver i løpet av sekunder.

I denne opplæringen lærer vi hvordan vi kan jobbe med strenger ved å lære å sammenkoble strenger i PowerShell.

La oss komme i gang.

PowerShell Concatenate Strings - tilleggsoperatøren

Den mest grunnleggende og standardmetoden for sammenkoblingsstrenger i PowerShell er tilleggsoperatøren. Dette er veldig nyttig når du trenger å koble til to eller flere strenger.

Derfor er det god praksis å sikre at alle de passerte variablene holder strengtyper før sammenkobling.

La oss se på et eksempel på å bruke tilleggsoperatøren til å bli med i to strenger.

$ url = "linuxhint.com "
$ proto = "https: //"
$ nettsted = $ proto + $ url
Skriving-output $ nettsted


I eksemplet over definerer vi to strengvariabler som holder URL -en og protokollen for en spesifikk nettadresse.

Vi bruker deretter tilleggsoperatøren til å sammenkoble de to strengene og lagre resultatet i en ny variabel.

Når vi har kjørt koden over, bør vi få en utdata som vist:

. "Concate_strings.PS1 "
https: // linuxhint.com

PowerShell Concatenate Strings - -F -operatøren

Den andre metoden for å sammenkoble strenger er -f -operatøren. Denne operatøren lar deg spesifisere strengvariablene som argumenter og returnere en verdi.

Ta eksemplet presentert nedenfor:

$ url = "linuxhint.com "
$ proto = "https: //"
$ nettsted = "0 1" -f $ proto, $ url
Skriving-output $ nettsted


I dette eksemplet bruker vi -f -operatøren til å passere strengene vi ønsker å sammenkoble som parametere. PowerShell vil da ta strengene i den rekkefølgen de blir presentert og bli med dem til en.

Denne metoden ligner veldig på F-String-formateringen i Python.

Den resulterende verdien er som vist:

.\ Concate_strings.PS1 "
https: // linuxhint.com

PowerShell Concatenate Strings - Bruke en separator.

PowerShell støtter også avgrensere som en metode for sammenkobling av strenger. I dette tilfellet passerer vi strengvariablene vi ønsker å sammenkoble, atskilt med målavgrensningene.

For eksempel:

$ firstName = "Pauline"
$ lastName = "yue"
$ fullname = $ FirstName, $ etternavn
Skriv-output $ fullnavn


I dette eksemplet passerer vi avgrensningsverdien som komma. Dette lar oss passere flere strenger og få en verdi, som vist i utgangen:

Pauline
Yue

PowerShell Concatenate Strings - Bruke String Builder -klassen

Det er en annen, mindre iøynefallende metode for sammenkobling av strenger i PowerShell. C# har en klasse som heter StringBuilder vi kan bruke til å gjøre dette.

StringBuilder -klassen i C# lar deg lage mutable strengtegn. Vi kan imidlertid bruke den til å sammenkoble strenger i PowerShell, som vist i eksemplet nedenfor.

$ url = "linuxhint.com "
$ proto = "https: //"
$ nettsted = new -object -Typename System.Tekst.StringBuilder
$ t = $ nettsted.Vedlegg ($ proto)
$ t = $ nettsted.Vedlegg ($ url)
$ nettsted.ToString ()


I koden over starter vi med å definere to variabler som holder strengene vi ønsker å sammenkoble.

I den tredje linjen lager vi en ny variabel som holder hele strengobjektet. Merk at vi definerer det som en StringBuilder -type.

Til slutt bruker vi det nyopprettede objektet og vedleggsmetoden for å legge strengene sammen.

Du kan spørre: "Hvorfor trenger jeg noen gang å hoppe til C# for å bli med i strengene i PowerShell?”Selv om vi ikke kan fordele den fulle fordelen i denne artikkelen, fjerner bruk av StringBuilder visse begrensninger i PowerShell, for eksempel mutabilitet.

PowerShell Concatenate String - Bruke Concat -funksjon ()

Til slutt tillater PowerShells Concat () -funksjon å slå sammen strenger i en renere metode.

Ta en eksempelkode som vist nedenfor:

$ url = "linuxhint.com "
$ proto = "https: //"
$ nettsted = [system.String] :: concat ($ proto, $ url)
Skriving-output $ nettsted


I eksemplet over bruker vi systemet.String :: concat () funksjon for å sammenkoble strengene.

Dette er den reneste metoden for å slå sammen strenger. I tillegg er det en innfødt PowerShell, og du trenger ikke å lage nye objekter og konvertere dem tilbake til en streng for å gjøre dette.

Dette skal returnere utdataene som:

“.\ Concate_strings.PS1 "
https: // linuxhint.com

Lukking

I denne artikkelen lærte du forskjellige metoder og teknikker for sammenkobling av strenger i PowerShell.