Reguliere expressies gebruiken

Ruby:
Reguliere expressies gebruiken

Hoe te:

Laten we enkele basisprincipes van Ruby regex doornemen.

# Een overeenkomst vinden
zin = "Hallo, Wereld!"
puts zin.match(/Wereld/) # Uitvoer: Wereld

# Vervanging
puts zin.gsub(/Wereld/, "Ruby") # Uitvoer: Hallo, Ruby!

# Overeenkomsten extraheren
email = "[email protected]"
puts email.match(/\A[^@\s]+@([^@\s]+\.)+[^@\s]+\z/).to_s # Uitvoer: [email protected]

# Itereren over overeenkomsten
"Frodo, Gandalf, Arwen".scan(/\w+/) { |naam| puts naam }
# Uitvoer:
# Frodo
# Gandalf
# Arwen

Diepere duik

Reguliere expressies in Ruby zijn beïnvloed door Perl’s sterke regex-mogelijkheden. Alternatieven voor regex zijn stringmethoden zoals #include?, #start_with? en #end_with?, maar geen biedt dezelfde kracht en flexibiliteit. Ruby implementeert regex met behulp van zijn eigen bibliotheek die is afgeleid van Perl’s regex-engine, wat functies biedt zoals vooruit en achteruit kijken, niet-gretige overeenkomsten en snelkoppelingen voor tekenklassen.

Zie ook

  • Ruby Reguliere Expressies: Officiële Ruby-documentatie voor regex.
  • Rubular: Een op Ruby gebaseerde reguliere expressie-editor, goed voor het testen van patronen.