Menu
CoddyTech

Zastępowanie i przycinanie

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

replace(what, with) zwraca nowy ciąg znaków, w którym każde wystąpienie what jest zastępowane przez with. Zastąpienie pustym ciągiem usuwa tekst:

var phone := "555-123-4567"
print(phone.replace("-", ""))
print(phone.replace("-", " "))
print(phone)
5551234567
555 123 4567
555-123-4567

Oryginalny ciąg znaków się nie zmienia. replace() rozróżnia wielkość liter; replacen() robi to samo i nie rozróżnia wielkości liter:

var chat := "Hello hello HELLO"
print(chat.replace("hello", "hi"))
print(chat.replacen("hello", "hi"))
Hello hi HELLO
hi hi hi

Tekst wpisany przez użytkownika często ma dodatkowe spacje na początku i na końcu. strip_edges() usuwa spacje, tabulatory i znaki końca wiersza z obu końców, a te znajdujące się w środku pozostawia:

var typed := "   Ana Lee  "
print("[" + typed.strip_edges() + "]")
[Ana Lee]

strip_edges(true, false) usuwa białe znaki tylko z lewej strony, a strip_edges(false, true) tylko z prawej. Aby usunąć określony tekst z końca, użyj trim_prefix() lub trim_suffix(). Nie zmieniają niczego, gdy tego tekstu nie ma:

print("level_03.tscn".trim_suffix(".tscn"))
print("level_03.tscn".trim_suffix(".png"))
level_03
level_03.tscn

Każda z tych metod zwraca ciąg znaków, więc możesz łączyć je w łańcuch: raw.strip_edges().to_lower().replace(" ", "_").

challenge icon

Wyzwanie

Łatwy

Program wczytuje tytuł poziomu do title. Zamień go na slug, czyli wersję tytułu, której można użyć jako nazwy pliku, i wypisz ją. W tej kolejności:

  1. Usuń spacje z obu końców
  2. Zamień wszystkie litery na małe
  3. Zamień każdą pozostałą spację na -
  4. Usuń każdy znak !, ? i .

Dla wejścia Is Godot Fun? (ze spacjami po obu stronach) wynikiem jest:

is-godot-fun

Spróbuj swoich sił

extends Node

func _ready():
	var title := OS.read_string_from_stdin()
	# Utwórz slug i go wypisz
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