Seu padrão egrep "(/** | /* | */ | **/)" text.txt
contém espaços explícitos; tente sem eles: egrep "(/**|/*|*/|**/)" text.txt
Estou tentando extrair linhas que iniciam ou terminam um comentário em Java:
O que eu tenho é:
egrep "(/** | /* | */ | **/)" text.txt
Notei que isso funciona para todas as linhas (como / * comment * /), exceto aquelas que contêm somente / *, / **, ** / ou * / e nada anterior ou posterior isso.
Por que isso acontece?
Seu padrão egrep "(/** | /* | */ | **/)" text.txt
contém espaços explícitos; tente sem eles: egrep "(/**|/*|*/|**/)" text.txt
Você está incluindo espaços dentro de seu padrão e está esquecendo as linhas de comentário que começam com //
.
Com:
egrep "(/\*\*|/\*|\*/|\*\*/|//)" text.txt
Eu vejo todas as linhas que iniciam ou terminam comentários, incluindo linhas que contêm apenas os tokens. Por exemplo ...
text.txt:
this should not be there
// this should be there
/* and this too */
/** even this
should be there too **/
/* or
that
also */
not this
/*
*/
/**
**/
Saída:
// this should be there
/* and this too */
/** even this
should be there too **/
/* or
also */
/*
*/
/**
**/
Tags regular-expression