Pular para o conteúdo

Extrair informações entre "delimitadores"

Responder tópico
  • Denunciar
  • Indicar

1. Extrair informações entre "delimitadores"

Enviado em 14/01/2015 - 13:49h

Ola,

Estou com dificuldade em conseguir extrair informações de um arquivo texto.

Há varias informações contidas no mesmo, porém preciso extrair apenas o que estiver entre
"Create Table"....

";"

Poderiam me ajudar?

Responder tópico

2. Re: Extrair informações entre "delimitadores"

Enviado em 14/01/2015 - 16:54h

Faz pouco tempo que uma pergunta semelhante foi resolvida aqui no fórum, só não faço a menor ideia do título dela ...

hearita escreveu:

Ola,

Estou com dificuldade em conseguir extrair informações de um arquivo texto.

Há varias informações contidas no mesmo, porém preciso extrair apenas o que estiver entre
"Create Table"....

";"

Poderiam me ajudar?
Uma forma simplista (talvez não seja suficiente) de resolver seria :

sed '/^Create Table/,/^;$/p;d' arquivo 


3. Re: Extrair informações entre "create table" - Cortar Trecho de Arquivo

Enviado em 14/01/2015 - 18:13h

Acho que a solução deve ser similar a esta: http://www.vivaolinux.com.br/topico/Sed-Awk-ER-Manipulacao-de-Textos-Strings/Cortar-Trecho-de-Arquiv...

Veja a resposta 8 e resposta 11 do link acima.
Se não for isso, passe mais detalhes e um pedaço do seu arquivo como exemplo para ver o que pode ser feito.
Fui

4. Re: Extrair informações entre "delimitadores"

Enviado em 15/01/2015 - 10:33h

É isso mesmo, deu certo..

Agradeço a ajuda.

Só uma dúvida, qual a função do ^ antes do Create e do ";", ? Indica quebra de linha ?

5. Re: Extrair informações entre "delimitadores"

Enviado em 15/01/2015 - 11:45h

hearita escreveu:

É isso mesmo, deu certo..

Agradeço a ajuda.

Só uma dúvida, qual a função do ^ antes do Create e do ";", ? Indica quebra de linha ?
No linguajar das expressões regulares o caractere circunflexo usado no inicio da descrição de um padrão é uma asserção de comprimento nulo que ancora para o início de uma linha :P. Em outras palavras, eu coloquei o '^' alí para dizer que a linha começa com aquelas strings.

Você pode verificar este e outros caracteres especiais em:

info sed 'Regular Expressions' 'Overview of Regular Expression Syntax' 


e

man 7 regex 


Responder tópico

Responder tópico

Entre na sua conta para responder.

Fazer login para responder