dicas show delphi

DICAS

Visite a biblioteca de dicas da comunidade.

Saiba mais
sombra
Artigos Show Delphi

ARTIGOS

Abordagens detalhadas sobre assuntos diversos.

Saiba mais
sombra
iniciantes show delphi

INICIANTES

Aprenda a programar de um modo simples e fácil.

Saiba mais
sombra
downloads show delphi

DOWNLOADS

Acesse os materiais exclusivos aos membros.

Saiba mais
sombra
voltar

PARA QUEM GOSTA DE DELPHI

Como extrair texto entre tags HTML ou XML?

Há certos tipos de dados que queremos coletar de um HTML ou XML,
para o tratamento dos mesmos, ou melhor exibição.

Há formas de fazer isto com o TWebBrowser, mas nos obriga a ter
que carregar o arquivo no mesmo e a manipulação não é
muito fácil.

Mas digamos que tenhamos um HTML ou XML em uma variável, ou mesmo
recuperando através de um Get com o Indy (IdHTTP) com Delphi,
como podemos fazer a mineração dos dados?

Felizmente há uma função bem simples que nos ajudará!

Vamos ao código fonte:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
function ExtractText(aText, OpenTag, CloseTag : String) : String;
{ Retorna o texto dentro de 2 tags (open & close Tag's) }
var
  iAux, kAux : Integer;
begin
  Result := '';
 
  if (Pos(CloseTag, aText) <> 0) and (Pos(OpenTag, aText) <> 0) then
  begin
    iAux := Pos(OpenTag, aText) + Length(OpenTag);
    kAux := Pos(CloseTag, aText);
    Result := Copy(aText, iAux, kAux-iAux);
  end;
end;

Exemplo de uso:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
procedure TForm1.Button1Click(Sender: TObject);
const
  HTML =
  '<html>'+
  '<head>'+
  '<title>SHOW DELPHI</title>'+
  '</head>'+
  '<body>'+
  '<h1>Titulo 1</h1>'+
  '<h2>Titulo 2</h2>'+
  '</body>'+
  '</html>';
var
  variavelString : string;
begin
  variavelString := ExtractText(HTML,'<h1>', '</h1>');
  ShowMessage( variavelString );
end;

Espero que seja útil a todos!

Fonte base: https://pt.stackoverflow.com/questions/31767/extrair-texto-entre-tags-html-com-indy-idhttp-com-delphi

Dúvidas ou sugestões, deixe o seu comentário!

  • Giovani Da Cruz
  • 4 comentários
  • 13 de junho de 2017

4 respostas para “Como extrair texto entre tags HTML ou XML?”

  1. Digão disse:

    Ótima dica brother,
    salvou eu rsrsrs
    vlw

  2. Kleiton Filhinho disse:

    Obrigado pela diga!

    Foi de grande utilidade.

  3. Welington Kleber disse:

    Como implementar isso em um XML real? com mais de uma tag ?
    Exemplo: uma api retorno 2 registros.

Deixe um comentário

Ir ao topo

© 2024 Infus Soluções em Tecnologia - Todos os Direitos Reservados