Parece que debe ser muy simple, pero el comportamiento awk gensub/gsub/sub siempre me ha sido incierto, y ahora simplemente no puedo hacer que haga lo la documentación dice que debería funcionar (y qué experiencia con un trillón de otras herramientas similares sugiere que debería funcionar). Específicamente, quiero acceder a "grupos capturados" desde una expresión regular en la cadena de reemplazo. Esto es lo que creo que la sintaxis de awk debe ser:GNU awk: acceder a los grupos capturados en el texto de reemplazo
awk '{ gsub(/a(b*)c/, "Here are bees: \1"); print; }'
Eso se debe convertir "abbbc" en "Aquí están las abejas: bbb". No, al menos no para mí en Ubunutu 9.04. En cambio, el "\ 1" se representa como^A; es decir, el personaje con el código 1. No es lo que quiero, por supuesto. ¿Cómo hago esto?
Gracias.
Además, no sólo a gsub y funciones predefinidas gensub comportarse de manera diferente con respecto a devolver el valor, pero el conjunto \ 1 a \ 9 característica * * Sólo funciona con funciones predefinidas gensub. – Pointy
Pruebe 'echo xxxabbcxxx' - la awk" solución "se rompe –
@Alesandr, siéntase libre de proponer una nueva –