我正在尝试重新排列包含全名的字符串,以便第二个名称显示在名字之前。
我已经设法使用以下代码拆分字符串,但是当我构建它时,它似乎以数组格式 ["第二个名字"、"名字"] 而不是字符串"第二个名字"、"名字"返回。
任何帮助表示赞赏!
def name_shuffler(str)
name_parts = str.split(" ")
first_name, last_name = name_parts[1], name_parts[0]
end
您可以加入这两个部分:
def name_shuffler(str)
name_parts = str.split(" ")
[name_parts[1], name_parts[0]].join(" ")
end
name_shuffler "one two" # => "two one"
尽管您需要考虑处理没有空格或多个名称部分的输入。
def name_shuffler(str)
str.split(" ").reverse.join(" ")
end
name_shuffler("John Doe") #=> "Doe John"
一种正则表达式方式。
"John Smith".gsub(/(w+) (w+)/,'2 1') #=> "Smith John"
旋转方式。
"John Smith".split(' ').rotate.join(' ') #=> "Smith John"