חיפוש והחלפת טקסט

Ruby:
חיפוש והחלפת טקסט

How to: (איך לעשות:)

רובי מספקת מתודות נוחות לחיפוש והחלפה. זה מסתכם לשימוש ב-gsub על מחרוזות:

original_text = "אני אוהב לתכנת ב-Ruby!"
replaced_text = original_text.gsub('Ruby', 'Python')

puts replaced_text
# => אני אוהב לתכנת ב-Python!

אפשר גם לחפש עם ביטויים רגולריים:

text_with_typos = "Hello, Worlld!"
corrected_text = text_with_typos.gsub(/Worlld/, 'World')

puts corrected_text
# => Hello, World!

Deep Dive (עומק הנושא):

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

דרך נוספת היא להשתמש בבלוק:

funny_text = "JavaScript is the best language."
funny_text.gsub(/best/) do |match|
  match == "best" ? "worst" : match
end

puts funny_text
# => JavaScript is the worst language.

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

See Also (ראה גם):