[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [shell-script] remover palavras que possuam uma determinada letra
From: |
Tiago Peczenyj |
Subject: |
Re: [shell-script] remover palavras que possuam uma determinada letra |
Date: |
Sat, 20 Aug 2011 15:22:11 -0300 |
$ echo abacate lapis rosa lanterna cachimbo | sed 's/ .*[lL].* /|&|/g'
abacate| lapis rosa lanterna |cachimbo
veja só vc nao esta apagando palavras e sim algo que esta entre
[espaço em branco][qq coisa 0 ou + vezes][l ou L][qq coisa 0 ou +
vezes][espaço em branco]
ou seja,
| lapis rosa lanterna |
é uma expressão valida.
se vc quer remover só palavras vc precisa ter cuidado com o meta-caracter .
pois ele representa tudo, até espaço em branco E delimitar palavras por um
espaço em branco nem sempre é valido pois elas podem estar no começo ou no
fim de uma expressão.
para tanto podemos fazer o seguinte
$ echo abacate lapis rosa lanterna cachimbo | sed -r 's/\w*[lL]\w*/->&<-/g'
abacate ->lapis<- rosa ->lanterna<- cachimbo
nesse caso veja como ficou a expressão
\w*[lL]\w*
onde \w é qualquer caracter alfanumerico (precisa da opcao -r do sed (versão
GNU)
[ ]'s Tiago
2011/8/20 Alysson Gonçalves de Azevedo <address@hidden>
> **
>
>
> aew pessoal, eu tava precisando fazer o seguinte, ler um arquivo texto
> qualquer e remover todas as palavras que contenham uma determinada letra...
> eu pensei em usar o sed.. e bolei o seguinte código para testar...
>
> nesse caso, eu quero remover as palavras com l ou L
> $ echo abacate lapis rosa | sed 's/ .*[lL].* / /g'
> abacate rosa
> até ai deu certo, mas ai fazendo outros testes
> $ echo abacate lapis rosa lanterna cachimbo | sed 's/ .*[lL].* / /g'
> abacate cachimbo
> já aqui foi demais, e removeu o 'rosa', que deveria ter ficado...
>
> o que dá para ser feito para melhorar?
> e tipo, é mesmo o sed a melhor ferramenta para isso? ou existe algo melhor?
>
> obrigado
>
> Alysson Gonçalves de Azevedo
> (11) 8491-7730
>
> [As partes desta mensagem que não continham texto foram removidas]
>
>
>
--
Tiago B. Peczenyj
Linux User #405772
http://pacman.blog.br
[As partes desta mensagem que não continham texto foram removidas]