string.find()
חלק מהיחידה יסודות במסלול ה-Lua של Coddy. שיעור 48 מתוך 90.
הפונקציה string.find() היא כלי רב־עוצמה לחיפוש בתוך מחרוזות. היא מאפשרת לך לחפש מחרוזת קטנה יותר (שנקראת תבנית) בתוך מחרוזת גדולה יותר ומציינת לך בדיוק היכן היא נמצאה.
הנה התחביר הבסיסי:
string.find(text, pattern)כאשר string.find() מאתרת בהצלחה את התבנית, היא מחזירה שני מספרים: מיקום ההתחלה ומיקום הסיום של ההתאמה. אם התבנית לא נמצאת, היא מחזירה nil.
הנה דוגמה פשוטה:
local sentence = "The treasure is hidden here"
local start_pos, end_pos = string.find(sentence, "treasure")
print(start_pos, end_pos) -- פלט: 5 12בדוגמה הזאת, המילה "treasure" מתחילה במיקום 5 ומסתיימת במיקום 12 במשפט.
אתגר
קלצרו גלאי הודעות סודיות שמחפש מילת קוד נסתרת בתוך הודעת טקסט ארוכה יותר. הכריזו על משתנה בשם message והשימו בו את הערך "The ancient treasure lies beneath the old oak tree". השתמשו בפונקציה string.find() כדי לחפש את המילה "treasure" בתוך ההודעה, ושמרו את מיקומי ההתחלה והסיום במשתנים בשם startPos ו-endPos. הדפיסו את שני ערכי המיקומים, כל אחד בשורה נפרדת.
נסו בעצמכם
-- הכריזו על המשתנה message
local message = "The ancient treasure lies beneath the old oak tree"
-- TODO: כתבו כאן את הקוד שלכם כדי למצוא את המילה "treasure" ולשמור את המיקומים
-- הדפיסו את המיקומים
print(startPos)
print(endPos)השיעור הזה כולל חידון קצר. התחילו את השיעור כדי לענות עליו ולעקוב אחרי ההתקדמות.
כל השיעורים ביחידה יסודות
4אופרטורים 2: יחסים ולוגיקה
אופרטורי שוויוןאופרטורים יחסייםהאופרטור 'and'האופרטור 'or'האופרטור 'not'הערכה בקצר חשמליערכים אמתיים ושקרייםסיכום – לוגיקה פשוטה10טבלאות חלק 1: בסגנון רשימה
מהי טבלה?יצירת טבלהגישה לאיברים לפי אינדקסשינוי איברים לפי אינדקסאופרטור האורך '#'table.insert()table.remove()סיכום - ניהול חברי החבורה13פרויקט: חנות שיקויים פשוטה
הגדרת הפרויקטהוספת שיקוי2משתנים וסוגי נתונים
מהו משתנה?מספריםמחרוזותערכים בוליאנייםהערך 'nil'הפונקציה type()מוסכמות למתן שמותסיכום – פרופיל דמות5פלט בסיסי
הדפסת ערכים מילולייםהדפסת משתניםהדפסת ערכים מרוביםשילוב מחרוזות ומשתניםהפונקציה tostring()קלטהמרת טיפוסיםסיכום – דוח מצבסיכום – עד 1208יסודות עיבוד מחרוזות
string.len()string.upper ו־string.lowerstring.sub()string.rep()string.find()חזרה – עיצוב שם משתמש3אופרטורים 1: חשבון ושרשור
אופרטורים אריתמטייםאופרטור מודולואופרטור חזקהשרשור מחרוזותקדימות אופרטוריםסיכום – חישובים פשוטים9יסודות הפונקציות
הגדרת פונקציהקריאה לפונקציהפונקציות עם פרמטריםפונקציות עם כמה פרמטריםהפקודה 'return'סיכום – מחשבון שטחתרגלו בעצמכם: קומפיילר Lua אונליין