אתה נמצא כאן האופרטור last - המשך


האופרטור last סופר רק לולאות של בלוקים ולא בלוקים אחרים שדרושים לשם יצירת מבנה סינטקטי. הכוונה היא שהבלוק של ה then בהצהרת ה if לא נחשב, אלא רק בלוקים שיוצרים את
ה for, foreach, while ובלוקים רגילים ילקחו בחשבון.
הכוונה בבלוקים רגילים היא כאלו שלא שייכים למבנה גדול יותר כמו לולאה או סאברוטינה או מבנה
if-then-else.

while (<STDIN>) # קריאת שורת הקלט כל פעם מחדש
{
if (^#) #נניח שאנו מחפשים שורת הערה כלשהי
     {
         if (/I love perl/) # ונניח שאנו רוצים הערה כלשהי המכילה את המשפט הזה
             {
                 print "I found the line $_";
                 last;
/*לשם יציאה מן הלולאה כיוון שמצאנו את השורה שחפשנו*/

             }
         }

     if (/^$/) # הגענו לשורה ריקה המסמלת אצלנו את סוף הטקסט
         {
             print "I didnt find the line \n ";
             last;
/*הגענו לסוף הטקסט ואין טעם להמשיך לחפש, לכן נצא מן הלולאה*/

         }
}

שימו לב, ברגע שנמצאה השורה המתחילה ב # ומכילה את המשפט I love perl , נצא , כי רצינו לבדוק את שורת ההערה המתאימה הראשונה שנמצאה בטקסט.









להוספת תגובה, אנא התחברו לדרכונט.