sjsc sjsc - 5 months ago 9
Ruby Question

Ruby on Rails: Converting "SomeWordHere" to "some word here"

I know you can do something like:

"SomeWordHere".underscore.gsub("_", " ")


to get "some word here".

I thought that might be a little too much for something so simple. Is there a more efficient way (maybe a built-in method?) to convert "SomeWordHere" to "some word here"?

Answer

alt text

The methods underscore and humanize are designed for conversions between tables, class/package names, etc. You are better off using your own code to do the replacement to avoid surprises. See comments.

"SomeWordHere".underscore => "some_word_here"

"SomeWordHere".underscore.humanize => "Some word here"

"SomeWordHere".underscore.humanize.downcase => "some word here"