code

문자열의 문자를 알파벳순으로 정렬하는 방법은 무엇입니까?

codestyles 2021. 1. 10. 17:17
반응형

문자열의 문자를 알파벳순으로 정렬하는 방법은 무엇입니까?


Array sort의 경우 요소 시퀀스를 재정렬 하는 예쁜 방법이 있습니다. 문자열에 대해 동일한 결과를 얻고 싶습니다.

예를 들어, 나는 문자열을 가지고 있으며 str = "String", 하나의 간단한 방법으로 알파벳순으로 정렬하고 싶습니다 "ginrSt".

이것을 활성화하는 기본 방법이 Enumerable있습니까? 아니면 믹스 인을 포함해야 합니까?


chars메서드 는 문자열의 문자 열거를 반환합니다.

str.chars.sort.join
#=> "Sginrt"

대소 문자를 구분하지 않고 정렬하려면 :

str.chars.sort(&:casecmp).join
#=> "ginrSt"

또한 (재미 용)

str = "String"
str.chars.sort_by(&:downcase).join
#=> "ginrSt"

str.unpack("c*").sort.pack("c*")

문자열을 배열로 변환하여 정렬 할 수 있습니다.

'string'.split('').sort.join

참조 URL : https://stackoverflow.com/questions/9464065/how-to-sort-a-strings-characters-alphabetically

반응형