Your task is to sort a given string. Each word in the string will contain a single number. This number is the position the word should have in the result.
If the input string is empty, return an empty string. The words in the input String will only contain valid consecutive numbers.
각 단어에 들어있는 숫자를 기준으로 주어진 문자열을 재정렬해라
Numbers can be from 1 to 9. So 1 will be the first word (not 0).
숫자는 1~9로 제한된다. 그러므로 1이 들어있는 단어가 첫 번째에 위치한다.
"is2 Thi1s T4est 3a" -----> "Thi1s is2 3a T4est"
"4of Fo1r pe6ople g3ood th5e the2" -----> "Fo1r the2 g3ood 4of th5e pe6ople"
"" -----> ""
import re
def order(sentence):
return ' '.join(sorted(sentence.split(), key=lambda x: re.findall("\d+", x)))
sorted와 정규표현식을 활용해 재정렬했습니다.
split()
을 통해 띄어쓰기 단위로 문자열을 나눠줍니다.re.findall("\d+", x)
을 쓰면 단어 중 digit(숫자)해당되는 부분만 추출합니다sorted(오름차순)
정렬을 합니다.