Ruby中的大写,交换和反转

时间:2013-04-08 00:03:41

标签: ruby

我有一个具有挑战性的Ruby问题:

我想将“你好”改为“YDWOh”,将“你好吗”改为“uoy era WOh”。

基本上是大写,交换和反向函数。大写和交换大小仅用于句子的第一个单词。如果句子中有多个单词,我该怎么做?

2 个答案:

答案 0 :(得分:3)

请尝试以下步骤:

  1. capitalize你的字符串
  2. split(' ')将您的字符串转换为带有单词的数组
  3. 使用each_with_index.map查看数组中的每个单词
  4. 仅在数组的第一个单词
  5. 上使用swapcase
  6. join(' ')数组返回一个字符串
  7. reverse字符串

答案 1 :(得分:1)

您可以尝试以下方法:

a = "how are you"
p a.gsub(a.split[0...1].join(' '),a.split[0...1].join(' ').capitalize.swapcase).reverse

输出:

"uoy era WOh"