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

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

הוראות והנחיות נוספות זמינות גם במאמרים הנחיות לשימוש בביטויים רגולריים ותחביר RE2. אפשר לעיין גם במאמר הגדרת כללים לסינון לפי עמידה במדיניות.

חשוב: אנחנו תומכים רק בתחביר RE2, ששונה מעט מ-PCRE. כברירת מחדל, ביטויים רגולריים הם תלויי אותיות רישיות.

התאמה מדויקת לביטוי בלבד

התאמה מדויקת לביטוי בלבד
דוגמה לשימוש התאמה לביטוי stock tips.
דוגמאות לביטויים רגולריים דוגמה 1: (\W|^)stock\stips(\W|$)

דוגמה 2: (\W|^)stock\s{0,3}tips(\W|$)

דוגמה 3: (\W|^)stock\s{0,3}tip(s){0,1}(\W|$)
הערות
  • ‫‎\W מתאים לכל תו שהוא לא אות, ספרה או קו תחתון. היא מונעת מהביטוי הרגולרי להתאים לתווים לפני או אחרי הביטוי.
  • בדוגמה 2, התו ‎\s תואם לתו רווח, והמחרוזת {0,3} מציינת שיכולים להיות 0 עד 3 רווחים בין המילים stock ו-tip.
  • ‫^ מתאים לתחילת שורה חדשה. מאפשר לביטוי הרגולרי להתאים לביטוי אם הוא מופיע בתחילת השורה, בלי תווים לפניו.
  • ‫$ מתאים לסוף השורה. מאפשר לביטוי הרגולרי להתאים לביטוי אם הוא מופיע בסוף השורה, ללא תווים אחריו.
  • בדוגמה 3, ‏(s) תואם לאות s, והמחרוזת {0,1} מציינת שהאות יכולה להופיע 0 או 1 פעמים אחרי המילה tip. לכן, הביטוי הרגולרי תואם ל-stock tip ול-stock tips. אפשר גם להשתמש בתו ? במקום {0,1}

התאמה של מילה או ביטוי ברשימה

התאמה של מילה או ביטוי ברשימה
דוגמה לשימוש התאמה לכל מילה או ביטוי ברשימה הבאה:
  • בלוני
  • לעזאזל
  • דראט
  • fooey
  • gosh darnit
  • לעזאזל
דוגמה לביטוי רגולרי (?i)(\W|^)(baloney|darn|drat|fooey|gosh\sdarnit|heck)(\W|$)
הערות
  • ‫(...) מקבצת את כל המילים, כך שמחלקת התווים ‎\W חלה על כל המילים בתוך הסוגריים.

  • ‫(?i) גורם להתאמת התוכן ללא תלות באותיות רישיות.

  • ‫‎\W תואם לכל תו שהוא לא אות, ספרה או קו תחתון. הוא מונע מהביטוי הרגולרי להתאים לתווים לפני או אחרי המילים או הביטויים ברשימה.

  • ‫^ תואם לתחילת שורה חדשה. מאפשר לביטוי הרגולרי להתאים למילה אם היא מופיעה בתחילת שורה, בלי תווים לפניה.

  • ‫$ תואם לסוף השורה. מאפשר לביטוי הרגולרי להתאים למילה אם היא מופיעה בסוף השורה, בלי תווים אחריה

  • התו | מציין 'או', כך שהביטוי הרגולרי תואם לכל אחת מהמילים ברשימה.

  • ‫‎\s מתאים לתו רווח. משתמשים בתו הזה כדי להפריד בין מילים בביטוי.

התאמה למילה עם איות שונה או תווים מיוחדים

התאמה למילה עם איות שונה או תווים מיוחדים

דוגמה לשימוש

התאמה למילים fast cash ולחלק מההסוואות שספאמרים משתמשים בהן, כמו:
  • f@st c@sh
  • f@$t c@$h
  • fa$t ca$h
דוגמה לביטוי רגולרי

f[a4@][s5\$][t7] +c[a4@][s5\$]h

הערות
  • התו \W לא נכלל, כדי שתווים אחרים יוכלו להופיע לפני או אחרי כל אחת מהווריאציות של fast cash. לדוגמה, הביטוי הרגולרי עדיין תואם ל-fast cash בטקסט הבא:

מזומן במהירות!! או ***מזומן במהירות***

  • ‫[a4@] מתאים לתווים a,‏ 4 או @ במיקום התו השני במילה, ומשקף החלפות נפוצות של אותיות ששולחי ספאם משתמשים בהן כדי להתחמק מהתאמות פשוטות של טקסט.

התאמה של כל כתובת אימייל מדומיין ספציפי

התאמה של כל כתובת אימייל מדומיין ספציפי
דוגמה לשימוש התאמה לכל כתובת אימייל מהדומיינים yahoo.com,‏ hotmail.com ו-gmail.com.
דוגמה לביטוי רגולרי (\W|^)[\w.\-]{0,25}@(yahoo|hotmail|gmail)\.com(\W|$)
הערות
  • ‫‎\W מתאים לכל תו שהוא לא אות, ספרה או קו תחתון. היא מונעת מהביטוי הרגולרי להתאים תווים לפני או אחרי כתובת האימייל.
  • ‫^ מתאים לתחילת שורה חדשה. מאפשר לביטוי הרגולרי להתאים לכתובת אם היא מופיעה בתחילת השורה, בלי תווים לפניה.
  • ‫$ מתאים לסוף השורה. מאפשר לביטוי הרגולרי להתאים לכתובת אם היא מופיעה בסוף השורה, בלי תווים אחריה.
  • ‫[‎\w.\-] מתאים לכל תו של מילה (a-z,‏ A-Z,‏ 0-9 או קו תחתון), לנקודה או למקף. אלה התווים התקפים הנפוצים ביותר בחלק הראשון של כתובת אימייל. התו ‎\-‎ (שמציין מקף) חייב להופיע אחרון ברשימת התווים בתוך הסוגריים המרובעים.
  • התו '\' לפני המקף והנקודה מציין שהתווים האלה הם לא תווים מיוחדים של ביטוי רגולרי. אין צורך לסמן בתו בריחה את הנקודה בתוך הסוגריים המרובעים.
  • הפורמט (...) מקבץ את הדומיינים, והתו | שמפריד ביניהם מציין 'או'.

התאמה לכל כתובת IP בטווח

התאמה לכל כתובת IP בטווח
דוגמה לשימוש התאמה לכל כתובת IP בטווח 192.168.1.0 עד 192.168.1.255.
דוגמאות לביטויים רגולריים דוגמה 1: 192\.168\.1\.
דוגמה 2: 192\.168\.1\.\d{1,3}
הערות
  • התו ‎\ לפני כל נקודה מבטל את המשמעות המיוחדת של הנקודה – כלומר, הוא מציין שהנקודה היא לא תו מיוחד של ביטוי רגולרי.
  • בדוגמה 1, אין תווים אחרי הנקודה האחרונה, ולכן הביטוי הרגולרי תואם לכל כתובת IP שמתחילה ב-192.168.1., בלי קשר למספר שמגיע אחריה.
  • בדוגמה 2, הביטוי ‎\d תואם לכל ספרה מ-0 עד 9 אחרי הנקודה האחרונה, והביטוי ‎{1,3} מציין שהספרות 1 עד 3 יכולות להופיע אחרי הנקודה האחרונה. במקרה הזה, הביטוי הרגולרי תואם לכל כתובת IP מלאה שמתחילה ב-192.168.1.. הביטוי הרגולרי הזה תואם גם לכתובות IP לא חוקיות, כמו 192.168.1.999.

התאמה לפורמט אלפאנומרי

התאמה לפורמט אלפאנומרי
דוגמה לשימוש צריך לוודא שמספרי הזמנות הרכש של החברה זהים. המספר הזה יכול להיות בפורמטים שונים, למשל:
  • PO nn-nnnnn
  • PO-nn-nnnn
  • מס' הזמנת רכש nn nnnn
  • PO#nn-nnnn
  • PO nnnnnn
דוגמה לביטוי רגולרי ‪(\W|^)po[#\-]{0,1}\s{0,1}\d{2}[\s-]{0,1}\d{4}(\W|$)
הערות
  • ‫‎\W תואם לכל תו שהוא לא אות, ספרה או קו תחתון. הוא מונע מהביטוי הרגולרי להתאים לתווים לפני או אחרי המספר.
  • ‫^ תואם לתחילת שורה חדשה. מאפשר לביטוי הרגולרי להתאים למספר אם הוא מופיע בתחילת שורה, בלי תווים לפניו.
  • ‫$ מתאים לסוף השורה. מאפשר לביטוי הרגולרי להתאים למספר אם הוא מופיע בסוף השורה, בלי תווים אחריו.
  • ‫[#\-] תואם לסימן פאונד או למקף אחרי האותיות po, והמחרוזת {0,1} מציינת שאחד מהתווים האלה יכול להופיע אפס או פעם אחת. התו - (שמציין מקף) חייב להופיע אחרון ברשימת התווים בתוך הסוגריים המרובעים.
  • ‫‎\s מתאים לרווח, ו-‎{0,1} מציין שרווח יכול להופיע אפס או פעם אחת.
  • ‫‎\d מתאים לכל ספרה מ-0 עד 9, והערך {2} מציין שצריכות להופיע בדיוק 2 ספרות במיקום הזה במספר.