לומדים לחפש באינדיזיין // שיעור 1 בגרפ

על ידי

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

הקדמה

כל ביטוי שניתן להגדיר אותו במילים – ניתן למצוא אותו. ‘כל מילה ראשונה בפסקה’, ‘שלושת המילים האחרונות של פסקה’, ‘פסקאות של בין שתים לחמש מילים’, ‘מילה שמתחילה באות א’ ומסתיימת באות ת’, אך לא באותיות מנצפ”ך’, ‘כל מה שנמצא בתוך סוגריים’, ‘המילה שאחרי תואר הרב, אך לפני שליט”א או הי”ו’, כל אלו הן דוגמאות לביטויים שאפשר להגדיר אותם במילים.

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

חלק 1 – תווי מטא

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

^$.+*?|()[]{}\

בואו נעבור ביחד על תווים אלו, ונלמד מה הם מסמלים. הסבר מורחב מיד לאחר מכן:

^ מיקום בתחילת פסקה
$ מיקום בסוף פסקה
. כל סוג תו
+ התו האחרון שחיפשנו, פעם אחת או יותר פעמים
* התו האחרון שחיפשנו, אפס או יותר פעמים
? התו האחרון שחיפשנו, אפס פעמים או פעם אחת
| או
( ) קבוצה בתוך החיפוש. ניתן לעשות עליו מניפולציות בהחלפה
[ ] אחד מתוך התווים האלו שבתוך הסוגריים המרובעות
[^ ] ביטוי שלילי. לא האות/יות שבין הסוגריים
{ } חזרה על התו האחרון, או הקבוצה האחרונה מספר פעמים
\ מבטל את התו הבא אחריו, מלהיות תו כללי

חלק 2 – מיקומים

\< מיקום בתחילת מילה
\> מיקום בסוף מילה
^ מיקום בתחילת פסקה
\A מיקום בתחילת סיפור
$ מיקום בסוף פסקה
\Z מיקום בסוף סיפור
\b בגבולות המילה (בתחילת או בסוף מילה)
\B לא בגבולות המילה
 (?<=) חיפוש חיובי אחורה
(?=) חיפוש חיובי קדימה
(?<!) חיפוש שלילי אחורה
(?!) חיפוש שלילי קדימה

חלק 3 – תווים כלליים

\d תו של מספור
\w תו של מילה
\t טאב
\s כל סוג רווח
\n שבירת שורה ידנית (Line Break)
\r אנטר
\D כל תו שהוא לא מספור
\W כל תו שהוא לא תו של מילה
\S כל תו שהוא לא רווח
(?s) מתייחס לכל הטקסט כפסקה אחת
\1 חזרה על חלק החיפוש הקודם
$0 בהחלפה זה מסמן כל הטקסט שבתיבת חיפוש
$2 בהחלפה זה מסמן טקסט שבקבוצה 2 בתיבת חיפוש

חלק 4 – ידע מיותר (או: קודי חיפוש שכנראה לא תשתמשו בהם אף פעם)

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

סמנים: ~# מחפש מספר עמוד, ~x מחפש תו מקטע, ~a מחפש תו מעוגן, ~F מחפש מספר הערת שוליים, ~I מחפש תו אינדקס.

מעברים: ~M מחפש מעבר טור, ~R מחפש מעבר תיבת טקסט, ~P מחפש מעבר עמוד, ~L מחפש מעבר עמוד אי זוגי, ~E מחפש מעבר עמוד זוגי.

ועוד כמה לסיום: ~v מחפש משתנים (Variable בלע”ז), [[:punct:]] מחפש כל תווי הפיסוק והניקוד, [[:xdigit:]] מחפש תו הקסדצימלי, \h יחפש רווחים וטאבים. לעובדים עם טקסטים בלועזית: \u יחפש כל תו Uppercase, וכן \l יחפש כל תו Lowercase. הספקתם כבר ללמוד מחלק 3, שאם נשתמש באות גדולה \U או \L הוא יחפש אותם בהפוך, כל תו שהוא לא Uppercase וכל תו שהוא לא Lowercase – בהתאמה.

אם אתם רוצים לקרוא ממש הכל, יש אתר נפלא שיעזור לכם.

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

רוצה להגיב הראשון?

מה אתה חושב?

האימייל לא יוצג באתר. שדות החובה מסומנים *