ביטויים רגולריים – עוגנים וחזרות

ביטויים רגולריים – עוגנים וחזרות

  • פרסומת

עוגנים

כאשר מנתחים טקסט בעזרת ביטויים רגולריים, ניתן ״לחלק״ את הטקסט הנתון לשורות במקום להתייחס אליו כמיקשה אחת. עוגנים (anchors) בשפת הביטויים הרגולריים משמשים לציון התחלה או סוף של שורה. הסימן ^ (מחוץ לסוגריים מרובעים) מציין תחילת שורה, והסימן $ מציין סוף שורה.

לדוגמה, הביטוי הבא היה אמור למצוא שלוש תוצאות – beat brat boat אך מכיוון שנעשה שימוש בסימן ^ נמצאה התאמה אחת בתחילת השורה. 

Screen Shot 2015-05-27 at 4.51.34 PM

כמו כן, בביטוי הבא נמצאה התאמה אחת בסוף השורה, בשל השימוש בסימן $:

Screen Shot 2015-05-27 at 4.53.19 PM

חזרות

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

  • * מציין 0 או יותר הופעות של התו שלפניו
  • + מציין 1 או יותר הופעות של התו שלפניו
  • ? מציין 0 או 1 הופעות של התו שלפניו
  • {2,4} מציין טווח של הופעות, כשהמספר הראשון מציין את הכמות המינימאלית והמספר האחרון מציין את הכמות המקסימאלית. ניתן גם להחסיר את אחד המיספרים ולציין רק מינימום או מקסימום.

לדוגמה, הביטוי הבא מחפש מחרוזת המכילה את האות y, אפס או יותר הופעות של האות a ושוב את האות y. במקרה זה, yay yaaay yy יכולים להתאים.

Screen Shot 2015-07-06 at 4.37.05 PM

הביטוי הבא מחפש את המילה no שאחריה סימן קריאה אחד או יותר.

Screen Shot 2015-07-06 at 4.43.04 PM

הביטוי הבא מחפש את אחת מהווריאציות של המילה color. האות u יכולה להופיע, אך לא חייבת.

Screen Shot 2015-07-06 at 4.39.51 PM

הביטוי הבא מחפש מחרוזות המכילות בין 2 ל-4 הופעות של האות a.

Screen Shot 2015-07-06 at 4.45.54 PM

ניתן להשתמש בטווחים לכל מטרה, אפילו במקום *, + ו- ?:

  • הטווח  {0,} שווה ערך ל-*
  • הטווח  {1,} שווה ערך ל-+
  • הטווח  {0,1} שווה ערך ל-?