Kako razdeliti niz na dve spremenljivki v PowerShell

Od blizu tipkajo roke na prenosnem računalniku. Koncept nočnega dela.

Če imate v Microsoft PowerShell niz besedila, je pogosto koristno, da niz razdelite na več spremenljivk.

Zasluga slike: dusanpetkovic/iStock/GettyImages

Če imate v Microsoft PowerShell niz besedila, je pogosto koristno, da niz razdelite na več spremenljivk. Ime in priimek uporabnika sta lahko na primer ločena s presledkom ali telefonsko številko, ki se začne z območno kodo. Za to lahko uporabite vgrajeno funkcijo PowerShell Split. Na voljo so tudi druge funkcije, da PowerShell razčleni niz na druge načine.

Razumevanje Microsoft PowerShell

PowerShell je orodje ukazne vrstice in programski jezik, ki ga ponuja Microsoft. Je zamenjava za starejše orodje za paketno skriptno skriptiranje Windows in DOS, ki je prav tako še vedno na voljo v večini različic sistema Windows.

Video dneva

Pogosto se uporablja za združevanje rezultatov iz več programov ali posredovanje podatkov iz enega programa v drugega, zato ga je koristno uporabiti za manipulacijo nizov.

Funkcija razdelitve PowerShell

Če imate v PowerShell niz in ga želite razdeliti na nek znak, lahko to storite z vgrajenim

Split funkcijo. Napišite s -Split, kjer je s spremenljivka, ki vsebuje niz, ali pokličite s.split. Funkcija bo vrnila matriko, ki vsebuje vse elemente razdeljenega niza, ki jih lahko zajamete v spremenljivko, kot je

$a = s.split()

Te lahko dodelite spremenljivkam tako, da do posameznih elementov dostopate kot $a[0], $a[1] in tako naprej ali jih obdržite v matriki, če je to bolj uporabno.

Delitev nizov je pogosto uporabna, ko morate uporabniški vnos ali izhod drugega programa razbiti na njegove sestavne dele.

Možnosti razdelitve PowerShell

PowerShell bo privzeto razdelil niz na presledke, vključno s presledki, prelomi vrstic in tabulatorji. V nekaterih primerih boste morda želeli razdeliti niz na drug znak, kot je vejica ali vezaj, ali niz, kot je "in."

Če želite to narediti, naredite, da se želeni znak ali niz razdeli okoli drugega argumenta funkcije split, tako da na primer napišete s.split(",") ali s -split "," za razdelitev na vejico. Ne glede na značaj, ki ga želite dati PowerShellu kot ločevalnik, ali ločilo, bo izpuščen iz vseh nizov rezultatov.

Izberete lahko tudi a največje število nizov za razdelitev tako, da to navede kot dodaten argument. Na primer, "a, b, c, d".split(",",2) bo dal niz z elementi "a" in "b, c, d", medtem ko "a, b, c, d". split(",") bo dal matriko z vsako črko v svojem nizu.

Obrezovanje niza v PowerShell

PowerShell lahko obrežete niz ali odstranite odvečne znake na začetku ali koncu z uporabo trim funkcijo. Privzeto bo odstranil presledke z začetka in konca niza.

Na primer, " a ".trim() bo dal rezultat "a." Kot argument lahko podate druge znake, ki jih želite odstraniti iz niza, tako da bo "^$a ".trim(" ^") dal rezultat "$a."

Funkciji TrimStart in TrimEnd lahko uporabite samo za odstranjevanje znakov z začetka ali konca niza.

To je pogosto uporabno, če imate podatke, pridobljene od uporabnika, ki jih je vtipkal v vnosno polje z dodatnimi presledki ali novimi vrsticami na koncu.

Funkcija pridružitve PowerShell

Kot v drugih programskih jezikih je tudi PowerShell pridruži se funkcija je v bistvu nasprotna razdeliti. Vzame več nizov in jih združi skupaj z danim ločilom ali brez presledka.

Na primer, -join ("a","b","c") bo dal rezultat "abc", medtem ko bo "a","b","c" -join " " dal niz rezultatov "ab c ." To je lahko uporabno, če imate več spremenljivk, ki jih morate združiti v eno za shranjevanje v datoteko, posredovanje drugemu ukazu ali izpis uporabniku.