• Revista PROGRAMAR: Já está disponível a edição #53 da revista programar. Faz já o download aqui!

Tiago Salgado

Expressão regular para extrair o texto de uma tabela em HTML

5 mensagens neste tópico

De expressões regulares não pesco um paio ... precisava da vossa ajuda para retirar a informação que está em tabelas em HTML.

O texto está entre tags deste tipo:

<TD CLASS=BlockFont WIDTH='80px'>S825102343</TD>

Os atributos dentro da <TD> podem variar.

Cumps

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Qualquer coisa como isto: <TD[^>]*>[^<]</TD>

A parte é bold é a informação.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Ora bem, podes sempre usar esta função

    Public Function InBetween(ByVal strVariable As String, ByRef str1 As String, ByRef str2 As String, Optional ByRef lngBeginning As Integer = 1) As String
       On Error Resume Next
       Dim iBetween As String
       Dim a As Integer
       Dim b As Integer
       Dim c As Integer

       b = InStr(lngBeginning, strVariable, str1)
       c = InStr(b + Len(str1), strVariable, str2)

       If IsDBNull(b) Or IsDBNull(c) Then
           iBetween = vbNullString
           Return ""
       End If

       strVariable = Replace(strVariable, VB.Right(strVariable, Len(strVariable) - c + 1), vbNullString)

       strVariable = VB.Right(strVariable, Len(strVariable) - InStr(lngBeginning, strVariable, str1, CompareMethod.Text) - Len(str1) + 1)

       Return strVariable
   End Function

Que pro teu caso seria qualquer coisa como

InBetween("80px'>", "</TD")

E obtinhas S825102343

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Já agora, como utilizo isso das expressões regulares? Não topei nada :/

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!


Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.


Entrar Agora