Menu
Coddy logo textTech

Przechwytywanie

Lekcja 17 z 28 w kursie Wyrażenia regularne w Pythonie w Coddy.

Grupy przechwytujące nie tylko grupują części wzorca, ale także przechwytują dopasowany tekst. Do tych przechwyconych grup można później odwoływać się we wzorcu lub używać ich w ciągu zastępującym podczas podstawiania.

import re

text = "abab abab abab"
pattern = r"(ab)\1"
matches = re.findall(pattern, text)

print(matches)  # Wynik: ['ab', 'ab']

W powyższym przykładzie wzorzec (ab)\1 przechwytuje grupę "ab", a następnie szuka tej samej grupy bezpośrednio po niej. \1 to odwołanie wsteczne do pierwszej przechwyconej grupy.

Inny przykład:

import re

text = "My email is example@example.com and my backup is backup@example.com."
pattern = r"(\w+)@example\.com"
matches = re.findall(pattern, text)

print(matches)  # Wynik: ['example', 'backup']

W powyższym przykładzie wzorzec (\w+)@example\.com przechwytuje część adresu e-mail przed @example.com.

challenge icon

Wyzwanie

Łatwy

Napisz funkcję o nazwie find_repeated_patterns, która przyjmuje jako dane wejściowe ciąg tekstowy i zwraca listę powtarzających się wzorców składających się z dwóch znaków.

Spróbuj swoich sił

import re

def find_repeated_patterns(text):
    # Wpisz tutaj kod

Wszystkie lekcje w sekcji Wyrażenia regularne w Pythonie

Poćwicz samodzielnie: Kompilator Python online