我希望将每个单词的第一个字符大写并保留其余单词(因此它与Rails的不同titleize,后者将其余部分缩写).第一行是测试,第三行有效,但我想知道为什么第二行不起作用?
ruby-1.9.2-p180 :026 > "omega-3 (dHA)".gsub(/\b([a-z])/, '#\0#')
=> "#o#mega-3 (#d#HA)"
ruby-1.9.2-p180 :027 > "omega-3 (dHA)".gsub(/\b([a-z])/, '\0'.upcase)
=> "omega-3 (dHA)"
ruby-1.9.2-p180 :028 > "omega-3 (dHA)".gsub(/\b([a-z])/) {|s| s.upcase}
=> "Omega-3 (DHA)"
Run Code Online (Sandbox Code Playgroud)
小智 7
'\0'.upcase调用upcase字符串的方法'\0'- 用于调用的parens在Ruby中是可选的.这当然什么都不做,所以第二行就是.gsub(/.../, '\0')
| 归档时间: |
|
| 查看次数: |
257 次 |
| 最近记录: |