Aby zamieniać CamelCase (np. ToJestCamel) na odpowiednik z podkreślnikami (to_jest_camel), w języku Ruby najprościej dopisać sobie małe rozszerzenie do klasy String:
class String def underlinize self.split(/(?=[A-Z])/).join('_').downcase end end
Dzięku temu możemy wywoływać sobie naszą metodę w ten sposób:
txt = 'NaszCamelCase' puts txt.underlinize # wynik: nasz_camel_case