문자열 순회하기
Coddy Ruby 여정의 기초 섹션에 포함된 레슨 — 88개 중 67번째.
배열과 마찬가지로 Ruby의 문자열은 문자 단위로 반복 처리할 수 있습니다. each_char 메서드를 사용하면 문자열의 각 문자를 개별적으로 처리할 수 있습니다.
작동 방식은 다음과 같습니다:
word = "Ruby"
word.each_char do |char|
puts char
end이것은 각 문자를 별도의 줄에 출력합니다: R, u, b, y. 블록 변수 char는 반복자가 문자열을 통과할 때 한 번에 한 문자씩 보유합니다.
문자와 그 위치가 모두 필요한 경우, each_char.with_index를 사용하세요:
word = "Hi"
word.each_char.with_index do |char, index|
puts "#{index}: #{char}"
end다음과 같이 출력됩니다:
0: H
1: i또 다른 유용한 메서드는 chars이며, 이는 문자열을 해당 문자의 배열로 변환합니다. 이를 통해 이미 배운 모든 배열 메서드를 사용할 수 있습니다:
letters = "abc".chars
puts letters # 출력: a, b, c이 메서드들은 텍스트를 분석하거나, 특정 문자의 개수를 세거나, 문자열을 한 글자씩 변형해야 할 때 유용합니다.
챌린지
쉬움문자열(예: hello)이 포함된 한 줄의 입력을 읽습니다.
each_char.with_index를 사용하여 문자열을 반복하고 각 문자와 해당 위치를 출력합니다. 각 줄은 Position 0: h와 같은 형식을 따라야 합니다.
모든 문자와 위치를 출력한 후, 새 줄에 문자열의 총 문자 수를 Total characters: 5와 같은 형식으로 출력합니다.
예를 들어, 입력이 hello인 경우 출력은 다음과 같아야 합니다:
Position 0: h
Position 1: e
Position 2: l
Position 3: l
Position 4: o
Total characters: 5입력이 Ruby인 경우 출력은 다음과 같아야 합니다:
Position 0: R
Position 1: u
Position 2: b
Position 3: y
Total characters: 4입력이 code인 경우 출력은 다음과 같아야 합니다:
Position 0: c
Position 1: o
Position 2: d
Position 3: e
Total characters: 4입력이 A인 경우 출력은 다음과 같아야 합니다:
Position 0: A
Total characters: 1치트 시트
each_char를 사용하여 문자열의 각 문자를 반복합니다:
word = "Ruby"
word.each_char do |char|
puts char
endeach_char.with_index를 사용하여 문자와 해당 위치에 모두 접근합니다:
word = "Hi"
word.each_char.with_index do |char, index|
puts "#{index}: #{char}"
endchars를 사용하여 문자열을 문자 배열로 변환합니다:
letters = "abc".chars
puts letters # 출력: a, b, c직접 해보기
# 입력 읽기
str = gets.chomp
# TODO: 아래에 코드를 작성하세요
# each_char.with_index를 사용하여 문자열을 반복합니다
# 각 문자를 해당 위치와 함께 다음 형식으로 출력하세요: Position X: char
# 전체 문자 수를 다음 형식으로 출력하세요: Total characters: X이 레슨에는 짧은 퀴즈가 포함되어 있습니다. 레슨을 시작해 문제를 풀고 진행 상황을 기록하세요.