מדריך מבוא לביטויים רגולריים

ביטויים רגולריים, הידועים בדרך כלל כ-regex או regexp, הם רצפים של תווים היוצרים דפוסי חיפוש. הם משמשים בעיקר להתאמת מחרוזת ולמניפולציה. Regex יכול להיות חזק להפליא לחיפוש, החלפה וחילוץ נתונים מטקסט.

תחביר בסיסי

ביטויים רגולריים מורכבים משילוב של תווים מילוליים ותווים מיוחדים הנקראים מטא-תווים. להלן כמה מרכיבים בסיסיים:

  • תווים מילוליים: אלו התווים הרגילים התואמים את עצמם. לדוגמה, הביטוי הרגולרי cat מתאים למחרוזת "cat".
  • מטא-תווים: לדמויות אלו משמעויות מיוחדות ומשמשות לבניית תבניות מורכבות. דוגמאות כוללות ., *, +, ?, [], {}, (), ו-|.

מטא-תווים נפוצים

להלן כמה מהתווים המטא-תווים הנפוצים ביותר ותפקודיהם:

  1. . - מתאים לכל תו בודד מלבד שורה חדשה.
  2. * - מתאים ל-0 חזרות או יותר של האלמנט הקודם.
  3. + - מתאים לחזרה אחת או יותר של האלמנט הקודם.
  4. ? - מתאים לחזרה של 0 או 1 של האלמנט הקודם.
  5. [] - משמש להתאמת כל אחד מהתווים בתוך הסוגריים.
  6. {} - מציין מספר מסוים של מופעים של האלמנט הקודם.
  7. () - מקבץ מספר אסימונים יחד ויוצר קבוצות לכידה.
  8. | - פועל כאופרטור OR.

דוגמאות לתבניות בסיסיות

הבה נחקור כמה דפוסים בסיסיים של ביטויים רגילים עם דוגמאות:

cat

מתאים למחרוזת "cat" בכל מקום בטקסט.

.at

מתאים לכל מחרוזת המכילה "a" ואחריו כל תו ולאחר מכן "t". לדוגמה, "cat", "bat", "hat".

\d{3}

מתאים בדיוק לשלוש ספרות. לדוגמה, "123", "456", "789".

[a-z]

מתאים לכל אות קטנה מ-"a" עד "z".

(dog|cat)

מתאים ל-"dog" או "cat".

שימוש ב-Regex בתכנות

ביטויים רגולריים נתמכים בשפות תכנות רבות. להלן דוגמאות לשימוש ב-Regex ב-Python וב-JavaScript:

דוגמה לפייתון

import re

# Search for 'cat' in a string
pattern = r'cat'
text = 'The cat sat on the mat.'
match = re.search(pattern, text)

if match:
    print('Match found:', match.group())
else:
    print('No match found')

דוגמה ל-JavaScript

// Search for 'cat' in a string
const pattern = /cat/;
const text = 'The cat sat on the mat.';
const match = text.match(pattern);

if (match) {
    console.log('Match found:', match[0]);
} else {
    console.log('No match found');
}

סיכום

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