Menu
Coddy logo textTech

Wyszukiwanie wzorca

Część sekcji Podstawy ścieżki R w Coddy. Lekcja 77 z 78.

challenge icon

Wyzwanie

Łatwy

Utwórz funkcję o nazwie count_pattern, która przyjmuje dwa argumenty: text i pattern. Funkcja powinna zwracać liczbę wystąpień wzorca w tekście, wliczając nakładające się wystąpienia.

Otrzymasz dwa wiersze danych wejściowych:

  1. Ciąg tekstowy, w którym należy szukać
  2. Ciąg wzorca, którego należy szukać

Wywołaj swoją funkcję z podanymi danymi wejściowymi i wyświetl wynik.

Podpowiedzi:

  • Użyj nchar(), aby uzyskać długość ciągów znaków
  • Użyj substr(text, start, stop), aby wyodrębnić podciągi
  • Iteruj po każdej prawidłowej pozycji początkowej i sprawdzaj, czy podciąg pasuje do wzorca

Na przykład, jeśli dane wejściowe to:

ababa
aba

Wynik powinien być następujący:

2

Wyjaśnienie: Wzorzec "aba" pojawia się na pozycji 1 (ababa) i na pozycji 3 (ababa), więc liczba wystąpień wynosi 2.

Jeśli dane wejściowe to:

mississippi
issi

Wynik powinien być następujący:

2

Spróbuj swoich sił

# Odczytaj dane wejściowe
con <- file("stdin", "r")
text <- suppressWarnings(readLines(con, n = 1))
pattern <- suppressWarnings(readLines(con, n = 1))
close(con)

# TODO: Utwórz funkcję o nazwie count_pattern, która przyjmuje text i pattern
# i zwraca liczbę nakładających się wystąpień pattern w text


# Wywołaj funkcję i wypisz wynik
print(count_pattern(text, pattern))

Wszystkie lekcje w sekcji Podstawy

Poćwicz samodzielnie: Kompilator R online