Ruby:
Eliminando caracteres que coinciden con un patrón
Cómo:
Ruby es genial para tratar con patrones, y aquí van unos ejemplos claros:
# Usando gsub con una expresión regular para eliminar todos los dígitos
cadena = "Yo tengo 2 manzanas y 3 plátanos."
limpia = cadena.gsub(/\d/, '')
puts limpia # => "Yo tengo manzanas y plátanos."
# Eliminando solo ciertos caracteres específicos
cadena = "¡Bienvenidos a #Ruby 2023!"
limpia = cadena.delete("#")
puts limpia # => "¡Bienvenidos a Ruby 2023!"
# Usando `tr` para borrar todos los caracteres excepto los alfabéticos
cadena = "precio: $59.99, código: #A31B!"
limpia = cadena.tr('^A-Za-z', '')
puts limpia # => "precioxcdigoAB"
Deep Dive
Eliminar caracteres no es nuevo; desde los días del ASCII en los años 60, los programas han necesitado “limpieza”. En Ruby, gsub
y delete
son métodos directos y potentes de String
que usan patrones o listas de caracteres a eliminar. Mientras gsub
permite expresiones regulares, permitiendo patrones complejos, delete
es más sencillo para listas concretas de caracteres. Hay alternativas como tr
, que básicamente traduce caracteres, pero también se puede usar para eliminar cuando se define correctamente el conjunto de caracteres de destino.
See Also
- Documentación de Ruby sobre los métodos
String#gsub
: Ruby Docs gsub - Regex en Ruby para patrones más avanzados: Ruby Docs Regexp
- Tutorial de Ruby sobre Expresiones Regulares: Ruby Regexp Tutorial