The UNIX and Linux Forums  


Go Back   O UNIX e Linux Forum > Top Fóruns > UNIX para Dummies Perguntas & Respostas
.
google unix.com



UNIX para Dummies Perguntas & Respostas Se não tiver certeza de onde se pode postar uma pergunta Unix ou Linux, postá-lo aqui. Todos os UNIX e Linux novatos bem vindos!

Mais UNIX e Linux Fórum Tópicos Você pode achar Helpfull
Fio Thread Starter Fórum Respostas Última postagem
Pergunta sobre Expressões Regulares Katkota UNIX para Dummies Perguntas & Respostas 14 05-18-2008 06:11
questão (expressão regular relacionados) metalwarrior UNIX para Dummies Perguntas & Respostas 1 02-03-2008 11:51
Expressão regular pergunta umen Programação Shell Script e 7 11-21-2007 09:45
Expressões Regulares Pergunta Krispy UNIX para Dummies Perguntas & Respostas 3 01-20-2006 10:36
pergunta sobre a expressão regular brentdeback Programação Shell Script e 0 11-14-2005 04:04

Closed Thread
English Japanese Spanish French German Portuguese Italian Dutch Swedish Russian Norwegian Hungarian Hebrew Danish Bulgarian Greek Powered by Powered by Google
 
Linkback Thread Tools Pesquisar este Thread Rate Thread Display Modes
  #1 (permalink)  
Old 05-14-2008
Katkota Katkota is offline
Usuário
  
 

Join Date: Oct 2007
Lugares: 118
Red face Expressões Regulares pergunta

Folks;
Tenho 3 perguntas e qualquer ajuda com eles seria realmente apreciada:

Se eu tiver uma lista de diretórios, por exemplo:

/ fs/pas/2007/4/6/2634210/admdat/examin
/ fs/pas/2007/4/6/2634210/admdat2/stat
/ fs/pas/2007/4/6/2634210/admdat3/data
/ fs/pas/2007/4/6/2634210/im_2/0b.dcm

Agora, minhas perguntas são as seguintes:
1. Como usar o RE, para extrair o arquivo passado como "examin e stat ,..."?

2. Como usar o RE, para extrair o diretório mãe para o último arquivo. tais como "amdat, amdat2, im_2 ,..."?

3. Como usar RE para extrair a data no meio "2007/4/6"?
  #2 (permalink)  
Old 05-14-2008
era era is offline Forum Advisor  
Herder do Inútil Gatos (On Sabático)
  
 

Join Date: Mar 2008
Localização: / lá / é / só / bin / sh
Posts: 3.652
Estamos falando Perl ou grep ou outra coisa aqui? Existem muitos sabores e regex a correspondência estratégia dependeria igualmente infra-estrutura que está disponível na ferramenta.

Para Perl, Algo como % m / (\ d (4) / \ d (1,2) / \ d (1,2)) / \ d +/([^/]+)/([^/]+)$% substrings você ia tirar o pedido em US $ 3, $ 2 e US $ 1, respectivamente.

Última edição por época; em 05/14/2008 03:58.. Motivo: Adicionar m %...% wrapper
  #3 (permalink)  
Old 05-14-2008
Katkota Katkota is offline
Usuário
  
 

Join Date: Oct 2007
Lugares: 118
Não perl, Apenas normal grep
  #4 (permalink)  
Old 05-14-2008
era era is offline Forum Advisor  
Herder do Inútil Gatos (On Sabático)
  
 

Join Date: Mar 2008
Localização: / lá / é / só / bin / sh
Posts: 3.652
grep normalmente retorna toda a correspondência linha anyway.

A expressão regular que deve trabalhar com o grep, como tal, se você fazer algumas substituições. \ d é um Perlism, substituir com [0-9]. (4) é um egrep-ismo, embora POSIX grep tem que de alguma forma, também (talvez com barras invertidas antes do chavetas), ou você pode simplesmente colocar o número necessário de repetições.

Você será pressionada duramente para encontrar uma situação em que você pode obter exatamente apenas os elementos necessários para fora do grep, apesar de tudo. [0-9] [0-9] [0-9] [0-9] / [0-9] [0-9] / [0-9] [0-9], e vai [^/]*$ continua a trabalhar, mas o penúltimo diretório não penso que você pode ficar sem passar por sed ou alguns destes.
  #5 (permalink)  
Old 05-14-2008
Katkota Katkota is offline
Usuário
  
 

Join Date: Oct 2007
Lugares: 118
Fiz isso a seguir para obter o último diretório em que a árvore e tudo o que preciso é um similares:

.*/([^/ \ n \ r ]*?)$
  #6 (permalink)  
Old 05-14-2008
era era is offline Forum Advisor  
Herder do Inútil Gatos (On Sabático)
  
 

Join Date: Mar 2008
Localização: / lá / é / só / bin / sh
Posts: 3.652
Se incluindo o último diretório componente tão bem é aceitável, então você pode fazer [^/]*/[^/]*$ para chegar à última e à penúltima diretório (# 1 e metade # 2) e, em seguida, se você caimento # 1 e na última barra, você começa a verdadeira resposta para a # 2.

*? não é, certamente, uma planície antiga grep expressão regular.

Qual é o ponto deste exercício?
Closed Thread

Marcadores

Tags
awk, awk caimento, grep ou, perl, perl regex, regex, caimento, caimento awk

Thread Tools Pesquisar este Thread
Pesquisar este Thread:

Pesquisa Avançada
Display Modes Esta taxa Thread
Esta taxa Thread:

Destacamento Regimento
Você não pode postar novas threads
Você não pode postar respostas
Você não pode postar anexos
Você não pode editar suas postagens

BB code é Ligado
Smilies são Ligado
[IMG] código é Ligado
Código HTML é Desligado
Trackbacks são Ligado
Pingbacks são Ligado
Refbacks são Ligado




Todos os horários são GMT -4. A hora é agora 10:16.


Powered by: vBulletinCopyright © 2000 - 2006, Jelsoft Enterprises Limited. Língua Traduções Powered by .
vBCredits v1.4 Copyright © 2007 - 2008, PixelFX Studios
O UNIX e Linux Fóruns Content Copyright © 1993-2009. Todos os Direitos Reserved.Ad Gestão por RedTyger

Content Relevant URLs por vBSEO 3.2.0