有沒有辦法將字符串中的單詞小寫只有它們是不是全部大寫?小寫字母只有當它不是全部大寫?
例如字符串:
WOrd ABC Word wOrD WOrD
應返回:
Word ABC word word word
注:的第一個詞應該仍然得到 「句首字母大寫」。
我試過humanize
和titlecase
在rails中的函數,但它們也是全部大寫的小寫單詞(它通常代表某個首字母縮略詞,不應該小寫)。
更新:
與下面的答案的幫助下,這最終解決這個對我來說:
def fix(string)
s = []
string.split.each do |word|
if word.swapcase != word.downcase
s << word.downcase
else
s << word
end
end
s = s.join(' ').chomp(' ')
s[0] = s[0].capitalize
return s
end
值得等待,直到你有足夠的聲譽來回答你自己的問題然後發佈您的更新作爲答案,而不是包括你在問題中的答案。 – Shadwell
謝謝。我會回來更新這個線程。 – user3188544