저는 Chris Pine의 Learn to Program을 사용하고 있습니다. 사용자 입력을 무작위 단어 목록 형태로 가져온 다음 배열로 알파벳순으로 채우는 비교적 간단한 도전 과제에 난처한 상황입니다. 이 문제에 대한 질문은 이전에 제기되었지만 SO에 관한 구체적인 질문을 찾을 수 없었기 때문에 중복되는 경우 미안합니다. 이 트릭을 수행하는 동안대소 문자를 무시하고 배열을 어떻게 영문자 순으로 정렬합니까?
puts "Here's a fun trick. Type as many words as you want (one per line) and
I'll sort them in...ALPHABETICAL ORDER! Hold on to your hats!"
wordlist = Array.new
while (userInput = gets.chomp) != ''
wordlist.push(userInput)
end
puts wordlist.sort
, 나는 대소 문자 구분하지 않고 배열을 알파벳순하는 방법을 알아 내려고 노력하고있어. 이것은 내 머리를 감싸기가 어렵습니다. 약 casecmp
에 대해 알게되었지만 문자열 배열과는 대조적으로 특정 문자열을 비교하는 방법 인 것 같습니다.
지금까지 내가 좋아하는 일을 시도했습니다 :
wordlist.to_s.downcase.to_a.sort!
나쁜 찾고뿐만 아니라, 루비 2.0 문자열로 변환 할 수 없습니다 것을 포함, 여러 가지 이유로 작동하지 않습니다
배열.
죄송합니다. 언급하는 것을 잊어 버렸습니다. 한 번 문자열로 변환 된 전체 배열을 소멸시킬 수 있지만 대문자와 마찬가지로 값을 반환하고 싶습니다. – user2608684