This is an old revision of the document!
Regular Expressions
Das Schweizer Sackmesser der String-Analyse und Verarbeitung.
Ruby
Testen
str = "ananas and bananas" if str =~ /a.a/ puts "match't" else puts "kein Match" end
Extrahieren
scan liefert ein Array, das für jeden Match den enstprechenden String enthält (wenn keine Gruppen in der RegEx sind), oder für jeden Match ein Array mit allen Gruppenmatches.
str = "pineapple and bananas" p str.scan(/a./) p str.scan(/a(.)/)
Modifizieren
gsub ersetzt jeden Match mit dem angegeben String. Gruppenmatches können mit “\\1” etc. verwendet werden.
gsub ohne ! modifiziert den String nicht und liefert einen neuen String. gsub! (mit !) modifizert den String und liefert diesen als Resultat, ausser wenn kein Match vorliegt wird nil zurückgeliefert.
str = "pineapple and bananas" p str.gsub(/a./, "vx") p str.gsub(/a(.)/,"a->\\1<-")
Aufgaben
- CSV-Daten einlesen
- Log-File Analyse
- pdf-Tabelle konvertieren