Python:
שימוש בביטויים רגולריים
איך ל:
השימוש בביטויים רגולריים בפייתון כרוך במודול re
, שסופק קבוצה של פונקציות לעיבוד טקסט באמצעות ביטויים רגולריים.
התאמת תבנית בסיסית
לחפש תבנית במחרוזת, השתמשו ב-re.search()
. היא מחזירה אובייקט התאמה כאשר התבנית נמצאת, אחרת None
.
import re
text = "Learn Python programming"
match = re.search("Python", text)
if match:
print("נמצאה תבנית!")
else:
print("התבנית לא נמצאה.")
פלט:
נמצאה תבנית!
קומפילציה של ביטויים רגולריים
לשימוש חוזר באותה תבנית, קומפלו אותה תחילה באמצעות re.compile()
לביצועים טובים יותר.
pattern = re.compile("Python")
match = pattern.search("Learn Python programming")
if match:
print("נמצאה תבנית מקומפלת!")
פלט:
נמצאה תבנית מקומפלת!
פיצול מחרוזות
לפצל מחרוזת בכל התאמה של תבנית regex, השתמשו ב-re.split()
.
פלט:
['Python', 'is', 'fun']
מציאת כל ההתאמות
למצוא את כל המופעים שאינם מתנפחים של תבנית, השתמשו ב-re.findall()
.
פלט:
['n', 'n']
החלפת טקסט
השתמשו ב-re.sub()
כדי להחליף הופעות של תבנית במחרוזת חדשה.
פלט:
Python הוא מדהים
ספריות צד שלישי
למרות שמודול ה-re
המובנה של פייתון חזק, ספריות צד שלישי כמו regex
מציעות יותר תכונות וביצועים משופרים. כדי להשתמש ב-regex
, התקינו אותה דרך pip (pip install regex
) וייבאו אותה בקוד שלכם.
import regex
text = "Learning Python 3.8"
match = regex.search(r"Python\s(\d+\.\d+)", text)
if match:
print(f"נמצאה גרסה: {match.group(1)}")
פלט:
נמצאה גרסה: 3.8