import re

# re.search(pattern, string) szuka pierwszego zgadzajacego sie tekstu
# re.match(pattern, string) sprawdza czy poczatek tekstu sie zgadza
# re.findall(pattern, string) zwraca liste wszystkich fragmentow tekstu ktore pasuja
# re.sub(pattern, repl, string) zamienia wszystkie zgadzajace sie teksty z repl

# co to pattern

# najprostrze: abc - znajdzie mi ciag dokladnie abc

# metaznaki:
#. - dopasowuje dowolny znak z wyjatkiem dowolnej linii
# \d - dopasowuje dowolna cyfre (0-9)
# \w - dopasowuje dowolny znak (litera, cyfra<znak podkreslenia)(bez spacji i nowej linii)
# \s - wykrywa dowolny znak bialy (spacja, tabulator, nowa linia)
# \b - dopasowuje granice slowa
# ^ - dopasowuje poczatek ciagu lub linii
# $ - dopasowuje koniec ciagu lub linii

# kwantyfikator:
# * - dopasowuje 0 lub wiecej wystapien poprzedniego wyrazenia
# + - dopasowuje jedno lub wiecej wystapien
# ? - dopasowuje 0 lub 1 wystapienie
# {m, n} - dopasowuje od m do n wystapien

# Klasa znakow
# [a-z] - dopasowuje dowolna mala litere alfabetu
# [0-9] - dopasowuje dowolna cyfre
# [A-Z] - dopasowuje dowolna duza litere alfabetu

# zdanie = "Ala ma kota"
# result = re.match(r"Ala", zdanie, re.IGNORECASE) # re.IGNORECASE - ignoruje czy jest mala czy duza litera
# print(f"wyszukiwanie elementu Ala {result}")

# zdanie = "Ala ma 123 kota"
# result = re.search(r"\d+", zdanie)
# print(f"wyszukiwanie elementu Ala {result}")

# zdanie = "Ala i Kuba jada na WycieCzke do Warszawy"
# result = re.findall(r"\b[A-Z][a-z]+", zdanie)
# print(f"wyszukiwanie wyrazow z duzej litery, wykryto: {result}")

text = "Valorant to najlepsza strzelanka na swiecie"
pattern = "Valorant"
replacement = "CS GO"
new_text = re.sub(pattern, replacement, text)
print(new_text)

zdanie = "ucze sie programowania w jezyu phyton3"
pattern = r"\d"
result = re.search(pattern, zdanie)
if result is not None:
    print(f"w zdaniu {zdanie} wystepuje cyfra")
else:
    print(f"w zdaniu {zdanie} nie wystepuje cyfra")

# zdanie = "Juliusz Słowacki herbu Leliwa (ur. 4 września 1809 w Krzemieńcu, zm. 3 kwietnia 1849 w Paryżu[1]) – polski poeta, dramaturg i epistolograf. Obok Adama Mickiewicza i Zygmunta Krasińskiego określany jako jeden z polskich wieszczów narodowych.Twórca filozofii genezyjskiej (pneumatycznej), epizodyczniezwiązany z mesjanizmem polskim, był też mistykiem. Obok Adama Mickiewicza uznawany powszechnie za największego przedstawiciela polskiego romantyzmu."
# pattern = r"\d+\s\w+\s\d{4}"
# result = re.findall(pattern, zdanie)
# print(result)

# zdanie = "Juliusz Słowacki herbu Leliwa (ur. 4 września 1809 w Krzemieńcu, zm. 3 kwietnia 1849 w Paryżu[1]) – polski poeta, dramaturg i epistolograf. Obok Adama Mickiewicza i Zygmunta Krasińskiego określany jako jeden z polskich wieszczów narodowych.Twórca filozofii genezyjskiej (pneumatycznej), epizodyczniezwiązany z mesjanizmem polskim, był też mistykiem. Obok Adama Mickiewicza uznawany powszechnie za największego przedstawiciela polskiego romantyzmu."
# pattern = r"\d{4}"
# result = re.sub(pattern, "2137", zdanie)
# print(result)

# znajdz wszystkie daty w formacie DD-MM-YYYY
zdanie = "dzisiaj jest 02-06-2025 a jutro bedzie 03.06.2025"
pattern = r"\d{2}-\d{2}-\d{4}"
result = re.findall(pattern, zdanie)
print(result)




