Menu
Coddy logo textTech

לכידה

שיעור 17 מתוך 28 בקורס ביטויים רגולריים ב-Python של Coddy.

קבוצות לכידה לא רק מקבצות חלקים מתבנית, אלא גם לוכדות את הטקסט שהתאים לה. אפשר להפנות לקבוצות שנלכדו בהמשך התבנית או להשתמש בהן במחרוזת ההחלפה בתהליך ההחלפה.

import re

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

print(matches)  # פלט: ['ab', 'ab']

בדוגמה שלמעלה, התבנית (ab)\1 לוכדת את הקבוצה "ab" ואז מחפשת את אותה קבוצה מיד אחריה. \1 היא הפניה לאחור לקבוצה הלכודה הראשונה.

דוגמה נוספת:

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)  # פלט: ['example', 'backup']

בדוגמה שלמעלה, התבנית (\w+)@example\.com לוכדת את החלק של כתובת האימייל שלפני @example.com.

challenge icon

אתגר

קל

כתבו פונקציה בשם find_repeated_patterns שמקבלת מחרוזת טקסט כקלט ומחזירה רשימה של דפוסים חוזרים בני שני תווים.

נסו בעצמכם

import re

def find_repeated_patterns(text):
    # כתבו כאן קוד

כל השיעורים ביחידה ביטויים רגולריים ב-Python

תרגלו בעצמכם: קומפיילר Python אונליין