רג'קס - התו "_"
-
כתבתי רג'קס קטן שאמור ללכוד כל תו שהוא לא אחד מהדברים הבאים:
- אות באנגלית
- מספר
- לוכסן
- מקף
ומשום מה קו תחתון (_) לא נלכד, למרות שלא כללתי אותו ב"רשימה לבנה"...
דמו
עריכה: זה נראה שמשום מה הA-z
מכליל אותו... לא מבין למה... אבל אולי התשובה לזה תענה גם על זה:
@dovid אמר בRegex - ביטויים רגולריים:\w תו של מילים, לאפוקי סימני פיסוק וגרוע מכך. קיצור של [a-zA-Z0-9_] (לא יודע למה כללו את הקו התחתי)
-
@צדיק-תמים אמר ברג'קס - התו "_":
זה נראה שמשום מה ה
A-z
מכליל אותו... לא מבין למה...כי
A-z
אומר כל התווים שערכם המספרי בין ערכו שלA
לערכו שלz
. הערך שלA
הוא 65 (0x41) ושלz
הוא 122 (0x7A) ושל_
הוא 95 (0x5F).
עיין כאן: https://en.wikipedia.org/wiki/ASCII#Printable_characters -
@צדיק-תמים A-z הכוונה מתו A עד תו z בסדר האותיות של הASCII
תוכל לראות פה https://www.cs.cmu.edu/~pattis/15-1XX/common/handouts/ascii.html
שבין הZ עד הa יש כמה וכמה סימנים. אני באמת אף פעם לא שמתי לב לכך, וכעת אני מבין למה טורחים לכתוב ככה
[A-Za-z]אגב, ה- בתוך סוגריים מרובעות צריך escape רק אם הוא בין שני תווים, אם אתה שם אותו בקצה (בהתחלה או בסוף) אז הוא מבין לבד שלא מדובר על טווח אלא על התו עצמו.
-
@צדיק-תמים אמר ברג'קס - התו "_":
@dovid @yossiz תודה.
בעצם גם כזה דבר יתאים:/[^A-Z0-9-\/]/gmi
אני צודק?
שים לב שזה לא כולל אותיות קטנות.