Иногда мне нравится учиться тому, как делать вещи «Рубиновым» способом.Мне было интересно - какой самый краткий, но читаемый способ взять строку, такую как:
foo-bar
и манипулировать ею, чтобы прочитать:
Foo Bar
"foo-bar".split("-").map(&:capitalize).join(" ")
"foo-bar".gsub(/\b(\w)/){|m| m.capitalize}.sub '-', ' '
string = "foo-bar" "foo-bar".split("-").map(&:capitalize).join(" ") # edited to because former answer was not optimal
>> p "foo-bar".scan(/\w+/).map(&:capitalize).join(" ") "Foo Bar" => "Foo Bar" >> p "foo---bar".scan(/\w+/).map(&:capitalize).join(" ") "Foo Bar" => "Foo Bar" >> p "foo 123 bar".scan(/\w+/).map(&:capitalize).join(" ") "Foo 123 Bar" => "Foo 123 Bar"