Menu
Coddy logo textTech

Iterieren über Strings

Teil des Abschnitts Logik & Programmfluss der Ruby-Journey von Coddy — Lektion 3 von 56.

Ein Ruby-String ist eine Sequenz von Zeichen, und Sie können mit each_char direkt darüber iterieren:

"ruby".each_char do |c|
  puts c
end
# r
# u
# b
# y

Wenn Sie auch den Index benötigen, verwenden Sie each_char.with_index:

"hi".each_char.with_index do |c, i|
  puts "#{i}: #{c}"
end
# 0: h
# 1: i

Um ein Array von Zeichen in einem Durchgang zu erhalten, rufen Sie chars auf:

"ruby".chars  # ["r", "u", "b", "y"]
challenge icon

Aufgabe

Einfach

Lies eine einzelne Eingabezeile ein. Zähle, wie viele Vokale (a, e, i, o, u, unabhängig von Groß- und Kleinschreibung) sie enthält, und gib Folgendes aus:

Vowels: <count>

Für die Eingabe Hello Ruby lautet die Ausgabe Vowels: 3: e, o, u. (y wird nicht mitgezählt.)

Spickzettel

Iteriere über jedes Zeichen in einem String mit each_char:

"ruby".each_char do |c|
  puts c
end

Verwende each_char.with_index, um auch den Index zu erhalten:

"hi".each_char.with_index do |c, i|
  puts "#{i}: #{c}"
end

Konvertiere einen String in ein Array von Zeichen mit chars:

"ruby".chars  # ["r", "u", "b", "y"]

Probier es selbst

input = gets.chomp
count = 0

# TODO: Über jedes Zeichen iterieren und Vokale zählen

puts "Vowels: #{count}"
quiz iconTeste dich selbst

Diese Lektion enthält ein kurzes Quiz. Starte die Lektion, um es zu beantworten und deinen Fortschritt zu speichern.

Alle Lektionen in Logik & Programmfluss