מה זה Regex?
ביטויים רגולריים (regex) הם רצפי תווים המגדירים דפוסי חיפוש. הם עוצמתיים להפליא למציאה, התאמה ומניפולציה של טקסט.
תווים בסיסיים
| דפוס | תיאור | דוגמה |
|---|
| . | כל תו מלבד שורה חדשה | a.c מוצא "abc", "a1c" |
| \d | כל ספרה (0-9) | \d\d מוצא "42" |
| \D | כל לא-ספרה | \D+ מוצא "abc" |
| \w | תו מילה (a-z, A-Z, 0-9, _) | \w+ מוצא "hello_123" |
| \W | תו לא-מילה | \W מוצא "@", "#" |
| \s | רווח לבן (רווח, טאב, שורה חדשה) | \s+ מוצא " " |
| \S | לא-רווח לבן | \S+ מוצא "hello" |
כמתים
| דפוס | תיאור | דוגמה |
|---|
| * | 0 או יותר | ab*c מוצא "ac", "abc", "abbc" |
| + | 1 או יותר | ab+c מוצא "abc", "abbc" |
| ? | 0 או 1 (אופציונלי) | colou?r מוצא "color", "colour" |
| {n} | בדיוק n פעמים | \d{4} מוצא "2025" |
| {n,} | n פעמים או יותר | \d{2,} מוצא "42", "123" |
| {n,m} | בין n ל-m פעמים | \d{2,4} מוצא "42", "123", "2025" |
עוגנים
| דפוס | תיאור | דוגמה |
|---|
| ^ | תחילת מחרוזת/שורה | ^שלום מוצא "שלום עולם" |
| $ | סוף מחרוזת/שורה | עולם$ מוצא "שלום עולם" |
| \b | גבול מילה | \bcat\b מוצא "cat" לא "category" |
| \B | לא-גבול מילה | \Bcat מוצא "category" |
מחלקות תווים
| דפוס | תיאור | דוגמה |
|---|
| [abc] | מוצא כל a, b, או c | [aeiou] מוצא תנועות |
| [^abc] | מוצא כל דבר חוץ מ-a, b, או c | [^0-9] מוצא לא-ספרות |
| [a-z] | טווח: כל אות קטנה | [a-zA-Z] כל אות |
| [0-9] | טווח: כל ספרה | [0-9]+ מוצא מספרים |
קבוצות וחלופה
| דפוס | תיאור | דוגמה |
|---|
| (abc) | קבוצת לכידה | (\d+)-(\d+) לוכד שני מספרים |
| (?:abc) | קבוצה ללא לכידה | (?:https?://) מקבץ ללא לכידה |
| a|b | חלופה (או) | חתול|כלב מוצא כל אחד |
| \1 | הפניה לקבוצה 1 | (\w)\1 מוצא "aa", "bb" |
דפוסים נפוצים
כתובת אימייל
[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}
URL
https?://[\w.-]+(?:/[\w./-]*)?
מספר טלפון (ישראל)
\+?972?[-.\s]?[2-9]\d?[-.\s]?\d{3}[-.\s]?\d{4}
תאריך (YYYY-MM-DD)
\d{4}-\d{2}-\d{2}
כתובת IP (IPv4)
\b(?:\d{1,3}\.){3}\d{1,3}\b
תעודת זהות
\d{9}
דגלים
| דגל | תיאור |
|---|
| i | חיפוש ללא רגישות לאותיות גדולות/קטנות |
| g | גלובלי - מוצא את כל ההתאמות |
| m | מרובה שורות - ^ ו-$ מתאימים לתחילת/סוף שורה |
| s | Dotall - נקודה מתאימה גם לשורות חדשות |
טיפים לשימוש ב-Regex Data Extractor
- התחילו פשוט והגדילו את המורכבות בהדרגה
- השתמשו בתכונת התצוגה המקדימה לבדיקת הדפוסים שלכם
- השתמשו בלוכסן אחורי כדי לברוח מתווים מיוחדים כשרוצים למצוא אותם כפשוטם
- השתמשו בכמתים לא-חמדניים (
*?, +?) כשצריך - בדקו עם מקרי קצה כדי לוודא שהדפוס שלכם עובד נכון
עם Regex Data Extractor, אתם יכולים להחיל דפוסים אלה ישירות על כל דף אינטרנט ולחלץ בדיוק את הנתונים שאתם צריכים. חילוצים מוצלחים!