0Pricing
Ruby Academy · Lektion

Suchen und Ersetzen

gsub, sub, match

Suchen und Ersetzen ist eine kostenlose Ruby Academy-Lektion auf CoddyKit. Dies ist Lektion 3 von 4. Du kannst die komplette Lektion unten kostenlos lesen – dann übst du sie direkt im Browser mit einem integrierten Code-Editor und einem KI-Tutor rund um die Uhr. Sie ist Teil des Ruby Academy-Lernpfads, und dein Fortschritt wird über Web und CoddyKit-App synchronisiert. Der Ruby Academy-Kurs umfasst insgesamt 4 Lektionen.

Eine Teilzeichenkette finden

Die Methode index gibt die Position des ersten Treffers oder nil zurück, wenn kein Treffer gefunden wird. include? gibt true oder false zurück.

text = "hello world"
puts text.index("world")
puts text.include?("world")

Das erste Vorkommen mit sub ersetzen

sub ersetzt nur das erste Vorkommen eines Musters durch einen neuen Wert.

text = "cat cat cat"
puts text.sub("cat", "dog")

Alle Vorkommen mit gsub ersetzen

gsub steht für globale Ersetzung. Es ersetzt jedes Vorkommen.

text = "cat cat cat"
puts text.gsub("cat", "dog")

Reguläre Ausdrücke verwenden

Muster zwischen Schrägstrichen wie /.../ sind reguläre Ausdrücke. /\d/ findet eine Ziffer. gsub und sub akzeptieren Regex-Muster.

text = "a1b2c3"
puts text.gsub(/\d/, "*")

Mit match? prüfen

match? gibt true zurück, wenn ein regulärer Ausdruck irgendwo in der Zeichenkette passt. Für Prüfungen ist es schnell und übersichtlich.

email = "ada@ruby.org"
puts email.match?(/@/)
puts "no at sign".match?(/@/)

Mit match Treffer erfassen

match gibt ein MatchData-Objekt zurück. Der Index [0] enthält den gesamten Treffer; Klammern erzeugen Erfassungsgruppen, auf die Sie mit [1], [2] und so weiter zugreifen.

data = "2024-05-30"
m = data.match(/(\d+)-(\d+)-(\d+)/)
puts m[1]
puts m[2]

Alle Treffer mit scan finden

scan gibt ein Array mit jedem Treffer in der Zeichenkette zurück. Das ist ideal, um alle Zahlen oder Wörter zu extrahieren.

text = "phone 555 and 777"
puts text.scan(/\d+/).inspect

Anker

Anker legen einen Treffer auf eine bestimmte Position fest. ^ steht für den Zeilenanfang, $ für das Zeilenende. \A und \z legen die Grenzen der gesamten Zeichenkette fest.

puts "hello".match?(/^hel/)
puts "hello".match?(/llo$/)
puts "hello".match?(/^world/)

Zeichenklassen

Eckige Klammern definieren eine Menge zulässiger Zeichen. [aeiou] findet jeden Vokal. [a-z] findet jeden Kleinbuchstaben.

text = "Ruby"
puts text.gsub(/[aeiou]/i, "_")

Blöcke in gsub

Übergeben Sie einen Block an gsub, um jeden Treffer dynamisch umzuwandeln. Der gefundene Text ist das Blockargument.

text = "one two"
result = text.gsub(/\w+/) { |w| w.upcase }
puts result

Suche ohne Beachtung der Groß-/Kleinschreibung

Das i-Flag nach einem regulären Ausdruck sorgt dafür, dass die Groß- und Kleinschreibung ignoriert wird.

text = "Hello HELLO hello"
puts text.gsub(/hello/i, "hi")

Kurzer Test

Überprüfen Sie Ihre Kenntnisse zum Suchen und Ersetzen.

Zusammenfassung

Sie können jetzt Text suchen und ersetzen:

  • index, include?, match? zum Suchen
  • sub (erstes Vorkommen) und gsub (alle Vorkommen) zum Ersetzen
  • Regex-Muster, Anker und Zeichenklassen
  • scan zum Extrahieren aller Treffer sowie Blöcke für dynamisches Ersetzen

Als Nächstes: Zeichenketten aufteilen und verbinden.

puts "a,b,c".gsub(",", " | ")

Häufig gestellte Fragen

Ist die Lektion „Suchen und Ersetzen“ kostenlos?

Ja — der vollständige Text von „Suchen und Ersetzen“ ist hier im Web kostenlos zu lesen. Um sie interaktiv zu üben (integrierter Code-Editor und 24/7 KI-Tutor) und den Rest des Ruby Academy-Kurses freizuschalten, upgrade auf CoddyKit PRO. Der Ruby Academy-Kurs umfasst insgesamt 4 Lektionen.

Was lerne ich in „Suchen und Ersetzen“?

gsub, sub, match Du übst Ruby Academy mit praktischem Code, den du direkt im Browser ausführst, und ein 24/7 KI-Tutor beantwortet deine Fragen während du die Lektion bearbeitest.

Brauche ich Erfahrung, um Ruby Academy zu starten?

Keine Vorkenntnisse erforderlich. Ruby Academy auf CoddyKit ist für Anfänger bis fortgeschrittene Lernende strukturiert, sodass du hier starten oder von Anfang an beginnen und in deinem eigenen Tempo voranschreiten kannst. Dies ist Lektion 3 von 4.

Wie lange dauert die Lektion „Suchen und Ersetzen“?

Die meisten CoddyKit-Lektionen dauern etwa 5–10 Minuten. Jede ist kompakt und interaktiv, sodass du stetig Fortschritte machst und genau dort weitermachst, wo du aufgehört hast – im Web und in der App.

Kann ich in dieser Ruby Academy-Lektion Code schreiben und ausführen?

Ja. Jede Ruby Academy-Lektion enthält einen integrierten Code-Editor, sodass du echten Code direkt in deinem Browser schreibst und ausführst und sofort KI-Feedback erhältst — ohne lokale Einrichtung erforderlich.

Alle Lektionen in diesem Kurs

  1. String-Grundlagen und Methoden
  2. Interpolation und Formatierung
  3. Suchen und Ersetzen
  4. Aufteilen und Verbinden
← Zurück zu Ruby Academy