2013-03-24 78 views
7

我在嘗試編寫一個幫手,將字符串從"something_like_this"轉換爲"Something like this"。我使用"something_like_this".titlecase來得到它"Something Like This",但我堅持低於每個大寫字母除第一個。從標題案件到判例案件

我想我正在尋找這樣的事情:

def write_sentence 
    string.titlecase.gsub!(/UPPERCASE-TO-LOWERCASE-EXCEPT-FIRST/) 
    #that should be something to lowercase everything except the first letter 
    return string 
end 

所以在視圖中我可以只寫string.write_sentence,並使其返回正是我想要的。有什麼想法嗎?

謝謝!

EDIT

我應該指出,該字符串有時會只有一個字,在這種情況下,字符串應轉換從"something""Something"

回答

0

最簡單的解決方案可能只是抓住第一個字母,大寫它,然後把它與一個新的字符串放在一起,第一個字母已經被刪除。然後只需運行一個正常替換,將_更改爲。這裏不需要任何花哨的正則表達式。