Menu
CoddyTech

Wyszukiwanie w łańcuchach znaków

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

Operator in informuje, czy tekst występuje w ciągu znaków. Gdy potrzebujesz czegoś więcej niż odpowiedzi tak lub nie, ciągi znaków mają metody wyszukiwania:

  • contains(text) zwraca true, jeśli tekst występuje w dowolnym miejscu, podobnie jak in
  • begins_with(text) i ends_with(text) sprawdzają tylko początek lub koniec
  • find(text) zwraca indeks pierwszego wystąpienia tekstu lub -1, jeśli tekst nie występuje
  • rfind(text) zwraca indeks ostatniego wystąpienia
  • count(text) zwraca liczbę wystąpień tekstu
var email := "alice@coddy.tech"
print(email.begins_with("alice"))
print(email.ends_with(".tech"))
print(email.find("@"))
print(email.find("x"))
print(email.count("c"))
true
true
5
-1
3

find() przyjmuje opcjonalny drugi argument: indeks, od którego rozpoczyna się wyszukiwanie. Użyj go, aby znaleźć następne wystąpienie po tym, które zostało już znalezione:

var text := "one fish, two fish"
var first := text.find("fish")
print(first)
print(text.find("fish", first + 1))
4
14

Te metody rozróżniają wielkość liter: "Hello".contains("hello") to false. Najpierw przekonwertuj ciąg znaków za pomocą to_lower() albo użyj wersji, które nie rozróżniają wielkości liter: findn(), containsn() i countn().

challenge icon

Wyzwanie

Łatwy

Program wczytuje adres e-mail do zmiennej email. Sprawdź, czy spełnia wszystkie poniższe zasady:

  • Zawiera dokładnie jeden znak @
  • Nie zaczyna się od @
  • Nie zawiera spacji
  • Kończy się na .com, .org lub .tech, niezależnie od użycia wielkich i małych liter

Wypisz valid, gdy spełnione są wszystkie zasady, w przeciwnym razie invalid. Dla wejścia alice@CODDY.TECH wynikiem jest:

valid

Spróbuj swoich sił

extends Node

func _ready():
	var email := OS.read_string_from_stdin()
	# Wypisz valid lub invalid
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