Supongamos que tengo un archivo foo.txt con el siguiente contenido:¿Cómo usar los grupos regex con nombre en el resultado de ack?
[2010-11-13 12:00:02,656]
[2010-11-13 12:00:02,701]
[2010-11-13 12:00:02,902]
Cuando ack
para la parte de fecha con el siguiente, funciona:
ack "(?P<foo>\d{4}-\d{2}-\d{2})" foo.txt --output "\$1"
2010-11-13
2010-11-13
2010-11-13
Pero cuando trato de usar --output
con el grupo llamado "foo", no puedo hacer que funcione:
ack "(?P<foo>\d{4}-\d{2}-\d{2})" foo.txt --output "(?P=foo)"
(?=foo)
(?=foo)
(?=foo)
Cualquier ayuda es muy apreciada. Muchas gracias.
Nota: El uso de grupos de expresiones regulares con nombre es dependiente en su Perl subyacente. Los grupos de expresiones regulares con nombre se introdujeron en Perl 5.10, pero si usa ack con un Perl anterior (ya que ack también funciona con Perl 5.8), no funcionarán. –