por que essa expressão não encontra espaço em branco após a data?

0

Estou usando sed para encontrar qualquer expressão que corresponda a uma data no formato 00/00/0000 com qualquer quantidade de espaço em branco após e simplesmente substitua-a pela letra h. Eu fiz a expressão:

sed -E 's/[[0-9][0-9]\/[0-9][0-9]\/[0-9][0-9][0-9][0-9][[:space:]]]/h/g' dates-input.txt

mas não está funcionando.

    
por gotigers1997 04.03.2015 / 21:20

1 resposta

2

Alguns problemas aqui:

  • As barras ( / ) em sua expressão devem ter escape.

  • Os colchetes mais externos devem ser parênteses ou ser omitidos por completo.

  • Se você quiser que qualquer quantidade de espaço seja permitida e substituída, a expressão deve ser [[:space:]]* , em vez de apenas [[:space:]] .

Tente isto:

's/[0-9][0-9]\/[0-9][0-9]\/[0-9][0-9][0-9][0-9][[:space:]]*/h/g'
    
por 04.03.2015 / 21:29

Tags