תת־מחרוזות עם substr()
חלק מהיחידה לוגיקה וזרימת תוכנית במסלול ה-R של Coddy. שיעור 1 מתוך 64.
substr(x, start, stop) מחזירה את התווים של x מהמיקום start ועד למיקום stop, כולל שניהם. המיקומים מתחילים ב־1, כמו האינדקסים של וקטור.
word <- "programming"
print(substr(word, 1, 7))
print(substr(word, 4, 6))פלט:
[1] "program"
[1] "gra"כדי לקחת תווים מהסוף, חשבו את המיקומים באמצעות nchar():
code <- "INV-2024-0042"
n <- nchar(code)
print(substr(code, n - 3, n))פלט:
[1] "0042"ערך stop שחורג מסוף המחרוזת נחתך לתו האחרון, וערך start שגדול מ־stop מחזיר מחרוזת ריקה:
print(substr("cat", 2, 10))
print(substr("cat", 3, 1))פלט:
[1] "at"
[1] ""substr() פועלת על כל איבר בווקטור תווים בבת אחת:
days <- c("Monday", "Tuesday", "Wednesday")
print(substr(days, 1, 3))פלט:
[1] "Mon" "Tue" "Wed"השמה ל־substr() מחליפה תווים במקום. המחרוזת שומרת על אורכה:
id <- "user-0000"
substr(id, 6, 9) <- "1234"
print(id)פלט:
[1] "user-1234"אתגר
קלהשלם את short_code(city) כך שתחזיר את שלוש האותיות הראשונות של city באותיות גדולות. עבור london היא מחזירה LON.
הקוד שסופק קורא את שם העיר מהקלט ומדפיס את הערך שהוחזר בשורה נפרדת.
נסו בעצמכם
short_code <- function(city) {
# כתבו את הקוד שלכם כאן
""
}
# קוד קלט/פלט שסופק: השאירו אותו כפי שהוא
input <- suppressWarnings(readLines(file("stdin")))
cat(short_code(input[1]), sep = "\n")
השיעור הזה כולל חידון קצר. התחילו את השיעור כדי לענות עליו ולעקוב אחרי ההתקדמות.
כל השיעורים ביחידה לוגיקה וזרימת תוכנית
1מחרוזות לעומק
תת־מחרוזות עם substr()עיצוב עם sprintf()פיצול וחיבורחיפוש במחרוזותהחלפת טקסטסיכום – בונה שמות משתמש4מטריצות
יצירת מטריצותאינדוקס מטריצותסיכומי שורות ועמודותאריתמטיקה של מטריצותסיכום – תרשים מקומות ישיבהתרגלו בעצמכם: קומפיילר R אונליין