שימוש בביטויים רגילים

Google Apps Script:
שימוש בביטויים רגילים

איך לעשות:

השימוש בביטויים רגולריים ב-Google Apps Script הוא פשוט בזכות התחביר המבוסס על JavaScript. הנה איך תוכלו לשלב regex בסקריפטים שלכם למטלות נפוצות כמו חיפוש ואימות נתונים.

חיפוש במחרוזות

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

function findEmailInText(text) {
  var emailPattern = /\b[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Z|a-z]{2,}\b/;
  var found = text.match(emailPattern);
  if (found) {
    Logger.log("נמצא: " + found[0]);
  } else {
    Logger.log("לא נמצא דואר אלקטרוני.");
  }
}

// שימוש בדוגמה
findEmailInText("צרו קשר ב[email protected].");

אימות נתונים

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

function validatePassword(password) {
  var passwordPattern = /^(?=.*[a-z])(?=.*[A-Z]).{8,}$/;
  return passwordPattern.test(password);
}

// פלט לדוגמה
Logger.log(validatePassword("Str0ngPass")); // מוציא: true
Logger.log(validatePassword("weak"));       // מוציא: false

צלילה עמוקה

ביטויים רגולריים ב-Google Apps Script יורשים מ-JavaScript, שהוסטנדרט לראשונה במפרט שפת ECMAScript ביוני 1997. למרות שהם עוצמתיים, לעיתים הם יכולים להוביל לקוד מבלבל וקשה לתחזוק, במיוחד כאשר משתמשים בהם יתר על המידה או למשימות מורכבות של התאמת תבניות שאולי יפתרו בצורה יעילה יותר דרך שיטות ניתוח אחרות.

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

בנוסף, מפתחי Google Apps Script צריכים להיות מודעים לבעיות ביצועים פוטנציאליות כאשר משתמשים בתבניות regex מורכבות במשימות טיפול בטקסט בסדר גודל גדול, כיוון שעיבוד regex יכול להיות עומס על המעבד. במקרים כאלה, חלוקה של המשימה לתתי-משימות פשוטות יותר או שימוש בפונקציות מובנות של טיפול במחרוזות יכולות להציע איזון טוב יותר של ביצועים וניתנות לתחזוקה.