"xxxyyyzzz"문자열을 가져 와서 동일한 문자를 그룹화하는 배열로 분할하려고합니다. 그래서 결과는 [ "xxx", "yyy", "zzz"]가되고 싶습니다. 왜이 코드가 루핑을 계속하는지 잘 모르겠습니다. 어떤 제안?왜이 루프가 멈추지 않습니까?
def split_up(str)
i = 1
result = []
array = str.split("")
until array == []
if array[i] == array[i-1]
i += 1
else
result << array.shift(i).join("")
end
i = 1
end
result
end
puts split_up("xxxyyyzzz")
루프 끝에 'i = 1'이 정말로 필요한 것인지 확실하지 않습니다. –
당신은'join'도 필요 없습니다. –
실제로 프로그램을 진행하기 위해'i'가 필요하지만 루프의 매 반복마다 끝에'i = 1'이 있습니다. – meagar