Menu
CoddyTech

Dzielenie i łączenie

Część sekcji Logika i przepływ programu ścieżki GDScript w Coddy. Lekcja 4 z 78.

Potrafisz już dzielić ciągi znaków za pomocą split() i łączyć tablice za pomocą join(). Obie metody potrafią więcej.

Elementy zwracane przez split() są ciągami znaków, dokładnie takimi, jak występują między separatorami, wraz ze spacjami. Oczyść lub przekonwertuj każdy element, zanim go użyjesz. Element wyniku można zastąpić za pomocą jego indeksu:

var items := "sword, shield ,bow".split(",")
print(items)
for i in range(items.size()):
	items[i] = items[i].strip_edges()
print(items)
["sword", " shield ", "bow"]
["sword", "shield", "bow"]

Drugi argument funkcji split() jest tym, który już znasz: true zachowuje puste fragmenty, false je pomija. Trzeci argument ogranicza liczbę podziałów. split(" ", true, 1) dzieli tylko przy pierwszej spacji, która oddziela polecenie od reszty wiersza:

print("say hello there".split(" ", true, 1))
["say", "hello there"]

rsplit() działa tak samo, ale liczy podziały od prawej strony, więc może podzielić nazwę pliku przy ostatniej kropce:

print("save.backup.json".rsplit(".", true, 1))
["save.backup", "json"]

join() przyjmuje również tablicę liczb i zamienia każdą z nich na tekst: ", ".join([3, 1, 2]) to "3, 1, 2".

challenge icon

Wyzwanie

Łatwy

Program odczytuje jeden wiersz słów oddzielonych przecinkami do zmiennej line. Wokół słów mogą znajdować się spacje, na przykład red, green ,blue.

Wypisz trzy wiersze:

  1. Liczbę słów
  2. Słowa bez otaczających je spacji, zapisane wielkimi literami i połączone za pomocą > (spacja, znak większości, spacja)
  3. Najdłuższe słowo bez spacji. Jeśli kilka słów ma tę samą długość, wypisz pierwsze z nich

Dla danych wejściowych red, green ,blue dane wyjściowe to:

3
RED > GREEN > BLUE
green

Spróbuj swoich sił

extends Node

func _ready():
	var line := OS.read_string_from_stdin()
	# Wypisz liczbę słów, połączone słowa i najdłuższe słowo
quiz iconSprawdź się

Ta lekcja zawiera krótki quiz. Zacznij lekcję, żeby na niego odpowiedzieć i śledzić swoje postępy.

Wszystkie lekcje w sekcji Logika i przepływ programu

Poćwicz samodzielnie: Kompilator GDScript online