Regex Tester

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

תבניות מוכנות:

יום/חודש/שנה עם / או . או -, וקבוצות בשם (day, month, year). לא בודק אם התאריך קיים באמת (למשל 31/02).

//g

מה התבנית אומרת

    קוד מוכן

    🔒 הכול רץ בדפדפן שלכם. הטקסט לבדיקה לא נשלח לשרת ולא נשמר. בלחיצה על "שיתוף" הטקסט נכנס לקישור עצמו (אחרי ה-#, חלק שלא נשלח לשום שרת) — שתפו רק עם מי שאתם סומכים עליו.

    מה זה Regex?

    ביטוי רגולרי (Regular Expression) הוא תבנית שמתארת טקסט: "שלוש ספרות, מקף, ועוד ארבע ספרות". משתמשים בו כדי לבדוק קלט בטפסים, לחפש ולהחליף בעורכי קוד, ולחלץ מידע מתוך טקסט ארוך.

    עברית ו-Regex: המלכודת

    ב-JavaScript, ‏\w תופס רק אותיות באנגלית, ספרות וקו תחתון — לא אותיות עבריות. גם \b (גבול מילה) מבוסס עליו, ולכן לא עובד כמצופה עם עברית. הפתרון: [א-ת], או \p{Script=Hebrew} עם הדגל u.

    ב-C# וב-Python 3 המצב הפוך: \w כן כולל עברית, ו-\d תופס גם ספרות של שפות אחרות. כדאי לבדוק את התבנית בשפה שבה היא תרוץ.

    הדגלים

    תבנית שתוקעת את הדף

    תבניות כמו (a+)+$ עלולות לרוץ זמן אקספוננציאלי על טקסט מסוים (catastrophic backtracking) — וזו גם פרצת אבטחה מוכרת (ReDoS). הבודק עוצר כל בדיקה שנמשכת יותר משנייה ומתריע, כך שהדף לא נתקע.

    תעודת זהות

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