Jak podzielić ciąg na dwie zmienne w PowerShell?

Zbliżenie na ręce pisania na laptopie. Koncepcja pracy w nocy.

Jeśli masz ciąg tekstu w programie Microsoft PowerShell, często przydatne jest podzielenie ciągu na wiele zmiennych.

Źródło obrazu: dusanpetkovic/iStock/GettyImages

Jeśli masz ciąg tekstu w programie Microsoft PowerShell, często przydatne jest podzielenie ciągu na wiele zmiennych. Na przykład możesz mieć imię i nazwisko użytkownika oddzielone spacją lub numer telefonu zaczynający się od numeru kierunkowego. W tym celu możesz użyć wbudowanej funkcji PowerShell Split. Dostępne są inne funkcje, dzięki którym program PowerShell przeanalizuje ciąg w inny sposób.

Zrozumienie Microsoft PowerShell

PowerShell to narzędzie wiersza poleceń i język programowania dostarczane przez firmę Microsoft. Jest to zamiennik starszego narzędzia do skryptów wsadowych Windows i DOS, które jest nadal dostępne w większości wersji systemu Windows.

Wideo dnia

Jest często używany do łączenia danych wyjściowych z wielu programów lub przekazywania danych z jednego programu do drugiego, więc warto go używać do manipulowania ciągami.

Funkcja podziału PowerShell

Jeśli masz ciąg w PowerShell i chcesz podzielić go na jakiś znak, możesz to zrobić za pomocą wbudowanego Podział funkcjonować. Albo napisz s -Split, gdzie s jest zmienną zawierającą ciąg, albo wywołaj s.split. Funkcja zwróci tablicę zawierającą każdy z elementów podzielonego ciągu, który można przechwycić w zmiennej, takiej jak

$a = s.split()

Możesz przypisać je do zmiennych, uzyskując dostęp do poszczególnych elementów jako $a[0], $a[1] itd. lub zachować je w tablicy, jeśli jest to bardziej przydatne.

Dzielenie ciągów jest często przydatne, gdy trzeba podzielić dane wejściowe użytkownika lub dane wyjściowe z innego programu na jego części składowe.

Opcje podziału PowerShell

Domyślnie PowerShell podzieli ciąg na znaki odstępu, w tym spacje, podziały wierszy i tabulatory. W niektórych przypadkach możesz chcieć podzielić ciąg na inny znak, taki jak przecinek lub łącznik, albo ciąg, taki jak „i”.

Aby to zrobić, stwórz żądany znak lub ciąg, aby podzielić wokół drugiego argumentu funkcji split, na przykład pisząc s.split(",") lub s -split ",", aby podzielić na przecinek. Niezależnie od postaci, którą zdecydujesz się przekazać PowerShellowi jako ogranicznik, czyli separator, zostanie pominięty we wszystkich ciągach wynikowych.

Możesz również wybrać maksymalna liczba ciągów do podzielenia podając to jako dodatkowy argument. Na przykład "a, b, c, d".split(",",2) da tablicę z elementami "a" i "b, c, d", a "a, b, c, d". split(",") da tablicę z każdą literą we własnym łańcuchu.

Przycinanie ciągu w PowerShell

Możesz mieć PowerShell przyciąć ciąg lub usunąć nadmiar znaków z początku lub końca, używając przycinać funkcjonować. Domyślnie usunie białe znaki z początku i końca ciągu.

Na przykład " a ".trim() da wynik "a." Możesz określić inne znaki, które chcesz usunąć z ciągu jako argument, więc "^$a ".trim(" ^") da wynik "$a".

Możesz użyć funkcji TrimStart i TrimEnd, aby usunąć tylko znaki z początku lub końca ciągu.

Jest to często przydatne, gdy masz dane uzyskane od użytkownika, który wpisał je w polu wprowadzania z dodatkowymi spacjami lub znakami nowej linii na końcu.

Funkcja łączenia PowerShell

Podobnie jak w innych językach programowania, PowerShell Przystąp funkcja jest zasadniczo przeciwieństwem podział. Pobiera wiele ciągów i łączy je ze sobą z określonym ogranicznikiem lub bez spacji.

Na przykład -join ("a","b","c") da wynik "abc", podczas gdy "a","b","c" -join " " da ciąg wynikowy "ab c ”. To może być przydatne, gdy masz wiele zmiennych, które musisz połączyć w jedną, aby przechowywać w pliku, przekazać do innego polecenia lub dane wyjściowe do użytkownika.