ruby - Ruby 中将“John Di Bello”转换为“John DI BELLO”的最短方法
问题描述
我试图在 Ruby 中找到最有效的方法来将字符串 "John Di Bello"
转换为"John DI BELLO"
.
基本上我需要capitalize
总是第一个单词的名字和upcase
也可以由两个单词组成的姓氏。
在这一刻,我正在提升一切
authors = ['John Di Bello', 'Terry Payton']
authors.map { |a| a.upcase }
#=> ['JOHN DI BELLO', 'TERRY PAYTON']
我找不到一种简单的方法来大写每个数组项中的第一个单词。
解决方案
拆分它,大写和大写,然后加入它。
['John Di Tri Bello', 'Terry Payton'].map do |s|
s.
split(/\s+/, 2).
reduce { |n, s| [n.capitalize, s.upcase] }.
join(' ')
end
#⇒ ["John DI TRI BELLO", "Terry PAYTON"]
推荐阅读
- linux - 使用 repo“repo.ius.io”安装 php56 后,在亚马逊 linux2 上 yum 更新失败
- tensorflow - TensorFlow 如何知道如何计算导数?
- service - ExecCondition 不会阻止服务的启动
- c++ - 使用另一个向量和映射函数进行高效的 std::vector 初始化
- go - 使用 GoLand 为 GO 编译 gRPC .proto 文件后缺少导入
- python - TinyMCE - 正确显示文本 - Django
- python - 如果似乎有多个索引,我可以获得索引的值吗?
- r - 提取由列中所有值的最高值组成的新数据框
- python - Pytube,urllib.error.HTTPError:HTTP 错误 404:未找到
- php - 问题:如何解决 laravel valet 没有这样的文件或目录?