我正在尝试将蛇形情况下的字符串转换为普通情况(例如:“ hello_world”为“ Hello world”)
我对红宝石还很陌生,并且正在Rails中使用它。我发现了这个问题Converting string from snake_case to CamelCase in Ruby,似乎该用例(.camelize
)有一个函数。有什么我可以使用内置的吗?如果没有,我该如何实现?
答案 0 :(得分:2)
"hello_world".capitalize.gsub("_"," ")
=> "Hello world"
答案 1 :(得分:2)
Rails有一个名为titleize
"hello_world".titleize # => "Hello World"
Ruby有一个名为capitalize
"hello_world".capitalize # => "Hello_world"
如果您只想将“ H”大写为“ Hello world”,请将两者合并(在Rails中)。
"hello_world".titleize.capitalize # => "Hello world"
答案 2 :(得分:2)
humanize是你的事:
[4] pry(main)> "hello_world".humanize
"Hello world"
答案 3 :(得分:1)
Rails 5引入了新的upcase_first
方法:
https://glaucocustodio.github.io/2016/05/19/rails-5-new-upcase-first-method/
通过在所有下划线之间加上空格将其合并在一起,您应该会很好:
text = 'hello_world'
text.upcase_first.gsub('_', ' ')
=> 'Hello world'