Menu
Coddy logo textTech

Iterar sobre Strings

Parte de la sección Fundamentos del Journey de Ruby de Coddy. Lección 67 de 88.

Al igual que los arreglos, las cadenas en Ruby se pueden iterar carácter por carácter. El método each_char te permite procesar cada carácter de una cadena individualmente.

Así es como funciona:

word = "Ruby"

word.each_char do |char|
  puts char
end

Esto muestra cada carácter en una línea separada: R, u, b, y. La variable de bloque char contiene un carácter a la vez a medida que el iterador se desplaza por la cadena.

Si necesitas tanto el carácter como su posición, utiliza each_char.with_index:

word = "Hi"

word.each_char.with_index do |char, index|
  puts "#{index}: #{char}"
end

Esto muestra:

0: H
1: i

Otro método útil es chars, que convierte una cadena en un array de sus caracteres. Esto te permite usar todos los métodos de array que ya has aprendido:

letters = "abc".chars
puts letters  # Salida: a, b, c

Estos métodos son útiles cuando necesitas analizar texto, contar caracteres específicos o transformar cadenas carácter por carácter.

challenge icon

Desafío

Fácil

Lee una sola línea de entrada que contenga una cadena (por ejemplo, hello).

Usa each_char.with_index para iterar a través de la cadena e imprimir cada carácter junto con su posición. Cada línea debe seguir este formato: Position 0: h

Después de imprimir todos los caracteres con sus posiciones, imprime el número total de caracteres en la cadena en una nueva línea con este formato: Total characters: 5

Por ejemplo, si la entrada es hello, la salida debería ser:

Position 0: h
Position 1: e
Position 2: l
Position 3: l
Position 4: o
Total characters: 5

Si la entrada es Ruby, la salida debería ser:

Position 0: R
Position 1: u
Position 2: b
Position 3: y
Total characters: 4

Si la entrada es code, la salida debería ser:

Position 0: c
Position 1: o
Position 2: d
Position 3: e
Total characters: 4

Si la entrada es A, la salida debería ser:

Position 0: A
Total characters: 1

Pruébalo tú mismo

# Leer entrada
str = gets.chomp

# TODO: Escribe tu código a continuación
# Usa each_char.with_index para iterar a través de la cadena
# Imprime cada carácter con su posición en el formato: Position X: char


# Imprime el número total de caracteres en el formato: Total characters: X
quiz iconPonte a prueba

Esta lección incluye un breve cuestionario. Empieza la lección para responderlo y registrar tu progreso.

Todas las lecciones de Fundamentos

Practica por tu cuenta: Compilador de Ruby online