Acesso direto ao conteúdo
Logotipo Dicas-L, por Ricardo Burile

Busca

Visite também: Segurança Linux ·  UnderLinux ·  VivaOLinux ·  LinuxSecurity ·  NoticiasLinux ·  BR-Linux ·  SoftwareLivre.org ·  [mais]   
 

Você está aqui: Home  → Arquivo Dicas-L

 

Curso de Inglês Online

Assine a Lista Dicas-L

Receba diariamente por email as dicas
de informática publicadas neste site
Para se descadastrar, clique aqui.

vi - Deleção de caracteres

Colaboração: Rubens Queiroz de Almeida

Data de Publicação: 20 de Dezembro de 1999

Primeiramente, gostaria de corrigir um erro. A lista de vi fica no site eGroups, e para se cadastrar nela mande um email para <vi-br-subscribe (a) egroups com>. E o mantenedor da lista é o Aurélio Marinho Jargas (<aurelio (a) conectiva com br>).

Adicionalmente, a mensagem de ontem não foi muito clara em alguns pontos e eu estou aproveitando aqui para divulgar a mensagem que me foi enviada por Fernando M. Roxo da Motta (<ss51 (a) ep-ba petrobras com br>), que complementa admiravelmente os conceitos apresentados.

  > vi - Substituicoes
  > ---------------------------------------------------------------------
  > Suponhamos que eu queira mudar todas as ocorrencias das palavras
  > "hot", "hit", "h0t" , "hat" por host, mas apenas nas linhas em 
  > que estas palavras ocorram isoladamente:
  > 
  > :%s/^h.t$/host/
  > 
  > Estou procurando, na primeira parte do argumento de busca,
  > por palavras de tres letras comecadas em "h" e terminadas em
  > "t". Esta palavra deve estar no comeco da linha "^" e a linha
  > nao pode conter mais nada "$". O "." apos o "h" indica que
  > qualquer letra que estiver nesta posicao atendera a especificacao
  > da busca. Ou seja, todas as palavras procuradas (hot, hit, h0t e
  > hat) serao substituidas por "host".

Mas também "het", "h:t" e qualquer outra combinação imaginável. Então como restringir apeas às combinações desejadas ? Basta substituir o "." pela seqüência de caracteres aceitáveis :

  :%s/^h[oi0a]t$/host/

Repare que o par "[" e "]" marcam a posição de *apenas um* carater, portanto se aparecer uma linha contendo apenas "hoit" o que acontecerá ? Na hora de fazer a comparação :

O "h" vai bater com o "h" do padrão O "o" vai bater com a opção "o" do "[oi0a]" O "i" não vai bater com o "t", que é o próximo caráter a ser verificado

Portanto esta linha *não* vai bater com o padrão.

Veja a relação completa dos artigos de Rubens Queiroz de Almeida

Formato PDF
Newsfeed RSS
Formato para impressão
PDF RSS Imprimir

Referências Adicionais

Referências adicionais sobre os assuntos abordados neste site podem ser encontradas em nossa Bibliografia.

Avalie esta dica

  • Currently 2.98/5
  • 1
  • 2
  • 3
  • 4
  • 5

Avaliação: 3.0 /5 (1525 votos)

Opinião dos Leitores

Seja o primeiro a comentar este artigo
*Nome:
Email:
Me notifique sobre novos comentários nessa página
Oculte meu email
*Texto:
 
  Para publicar seu comentário, digite o código contido na imagem acima
 


Powered by Scriptsmill Comments Script

Treinamentos, Consultorias e Soluçoes em TI. Baseados em softwares livres e padrões abertos para ambientes de missão crítica

Submarino.com.br

Expressões Regulares - Uma abordagem divertida 3ª edição