Ruby regex gsub una línea en un archivo de texto
Necesito hacer coincidir una línea en una cadena de archivo de texto ingresada y envolver esa línea capturada con un carácter, por ejemplo.
Por ejemplo imagina un archivo de texto como tal:
test
foo
test
bar
Me gustaría usar gsub para la salida:
XtestX
XfooX
XtestX
XbarX
Aunque estoy teniendo problemas para hacer coincidir una línea. He intentado usar expresiones regulares comenzando con ^ y terminando con $, pero no parece funcionar. ¿Algunas ideas?
Tengo un archivo de texto que tiene lo siguiente:
test
foo
test
bag
El archivo de texto se está leyendo como un argumento de línea de comandos.
Así que tengo
string = IO.read(ARGV[0])
string = string.gsub(/^(test)$/,'X\1X')
puts string
Produce exactamente lo mismo que está en el archivo de texto.