Menu
Coddy logo textTech

פונקציות לעיבוד מחרוזות

חלק מהיחידה יסודות במסלול ה-R של Coddy. שיעור 66 מתוך 78.

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

הפונקציה nchar() מחזירה את מספר התווים במחרוזת:

word <- "hello"
print(nchar(word))

פלט:

[1] 5

כדי לשלב כמה מחרוזות לאחת, השתמשו ב־paste(). כברירת מחדל, היא מפרידה בין הרכיבים באמצעות רווח:

result <- paste("Hello", "World")
print(result)

פלט:

[1] "Hello World"

השתמשו ב־paste0() כשרוצים שלא יהיה מפריד בין מחרוזות:

result <- paste0("Hello", "World")
print(result)

פלט:

[1] "HelloWorld"

להמרת אותיות גדולות וקטנות, R מספקת את toupper() ואת tolower():

print(toupper("hello"))
print(tolower("WORLD"))

פלט:

[1] "HELLO"
[1] "world"

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

challenge icon

אתגר

קל

תקבלו שתי שורות קלט:

  1. שם פרטי (למשל, john)
  2. שם משפחה (למשל, SMITH)

בצעו את הפעולות הבאות:

  1. המירו את השם הפרטי לאותיות גדולות באמצעות toupper()
  2. המירו את שם המשפחה לאותיות קטנות באמצעות tolower()
  3. חברו אותם לשם מלא באמצעות paste() (עם רווח ביניהם)
  4. חשבו את מספר התווים הכולל בשם המלא (כולל הרווח) באמצעות nchar()
  5. צרו שם משתמש על ידי חיבור השם הפרטי ושם המשפחה ללא מפריד, באמצעות paste0(), כשהכול באותיות קטנות
  6. הדפיסו את השם המלא
  7. הדפיסו את מספר התווים
  8. הדפיסו את שם המשתמש

לדוגמה, אם הקלט הוא:

alice
WONDER

הפלט אמור להיות:

[1] "ALICE wonder"
[1] 12
[1] "alicewonder"

הסבר: השם הפרטי "alice" הופך ל-"ALICE" (אותיות גדולות), ושם המשפחה "WONDER" הופך ל-"wonder" (אותיות קטנות). בשם המלא "ALICE wonder" יש 12 תווים (כולל הרווח). שם המשתמש מחבר את שני השמות באותיות קטנות וללא מפריד: "alicewonder".

נסו בעצמכם

# קרא את הקלט
con <- file("stdin", "r")
first_name <- suppressWarnings(readLines(con, n = 1))
last_name <- suppressWarnings(readLines(con, n = 1))
close(con)

# TODO: כתוב את הקוד שלך למטה
# 1. המר את first_name לאותיות גדולות באמצעות toupper()
# 2. המר את last_name לאותיות קטנות באמצעות tolower()
# 3. שלב אותם ב-full_name באמצעות paste()
# 4. חשב את מספר התווים באמצעות nchar()
# 5. צור username באמצעות paste0() (הכול באותיות קטנות)

# הצג את התוצאות
print(full_name)
print(char_count)
print(username)
quiz iconבחנו את עצמכם

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

כל השיעורים ביחידה יסודות

תרגלו בעצמכם: קומפיילר R אונליין