2013-04-08 58 views
-1

我有一個具有挑戰性的問題的Ruby:大寫,和的swapCase扭轉紅寶石

我想轉換「你好」到「YDWOh」和「你怎麼樣」到「uoy時代窩」。

這基本上是大寫,swapcase和反向函數。 Capitalize和swapcase僅用於句子的第一個單詞。當我在句子中有多個單詞時,我該怎麼做?

+4

這似乎並不像一個正常的情況。這是作業還是編程挑戰?如果是這樣,無論如何,你應該自己解決。這是家庭作業和編程挑戰的關鍵。 – 2013-04-08 02:07:32

回答

3

嘗試以下步驟:

  1. capitalize您的字符串
  2. split(' ')您的字符串轉換成文字
  3. 使用each_with_index.map數組去在每個字的陣列
  4. 在使用swapcase僅在該陣列的第一個字
  5. join(' ')陣列回字符串
  6. reverse字符串
+0

@Linuxios,但我沒有故意添加代碼...所以至少還有一些東西讓他自己想出來。 – Mischa 2013-04-08 13:43:26

+0

對不起。我會恢復。有人告訴我,我應該把你的答案編輯成你的答案,因爲它正在使用你的步驟。我會恢復。 – Linuxios 2013-04-08 13:55:47

0

你可以試試下面的:

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

"uoy era WOh"