Extraer texto de la etiqueta <font></font> [SRC]

Iniciado por <[(x)]>, 2 Febrero 2009, 00:42 AM

0 Miembros y 1 Visitante están viendo este tema.

<[(x)]>

holas

coco:
jej no es por nada pero el code que pusistes no se parece al que puse yo?


Código (vb) [Seleccionar]

....

  If InStr(LCase(strBuf), "<font") > 0 Then

  strBuf = Mid(strBuf, InStr(LCase(strBuf), "<font"))

  If InStr(LCase(strBuf), ">") > 0 Then

   Dim inta As Integer: inta = InStr(LCase(strBuf), ">")

   If InStr(LCase(strBuf), "</font") > 0 Then

    Dim intb As Integer

    intb = InStr(LCase(strBuf), "</font") - inta
    PlusArray strText, Mid(strBuf, inta + 1, intb - 1)

      ...


y lo qpusistes:
Código (vb) [Seleccionar]

Public Function TextInBetwinE(ByVal sData As String, ByVal sStart As String, ByVal sEnd As String) As String
    If InStr(sData, sStart) > 0 Then
        sData = Mid(sData, InStr(sData, sStart) + Len(sStart))
        TextInBetwinE = Mid(sData, 1, InStr(sData, sEnd) - 1)
    End If
End Function


Código (vb) [Seleccionar]

Dim strRet As String
strRet = TextInBetwinE("<font color=""#DD6600"">blablabla</font>", "<font ", "</font>")

If Left(strRet, 1) = ">" Then
strRet = Right(strRet, Len(strRet) -1)
Else
strRet = Right(strRet, Len(strRet) - InStr(strRet, ">"))
End If
<[(x)]>

el_c0c0

Cita de: <[(x)]> en  3 Febrero 2009, 05:58 AM
holas

coco:
jej no es por nada pero el code que pusistes no se parece al que puse yo?


Código (vb) [Seleccionar]

....

  If InStr(LCase(strBuf), "<font") > 0 Then

  strBuf = Mid(strBuf, InStr(LCase(strBuf), "<font"))

  If InStr(LCase(strBuf), ">") > 0 Then

   Dim inta As Integer: inta = InStr(LCase(strBuf), ">")

   If InStr(LCase(strBuf), "</font") > 0 Then

    Dim intb As Integer

    intb = InStr(LCase(strBuf), "</font") - inta
    PlusArray strText, Mid(strBuf, inta + 1, intb - 1)

      ...


y lo qpusistes:
Código (vb) [Seleccionar]

Public Function TextInBetwinE(ByVal sData As String, ByVal sStart As String, ByVal sEnd As String) As String
    If InStr(sData, sStart) > 0 Then
        sData = Mid(sData, InStr(sData, sStart) + Len(sStart))
        TextInBetwinE = Mid(sData, 1, InStr(sData, sEnd) - 1)
    End If
End Function


Código (vb) [Seleccionar]

Dim strRet As String
strRet = TextInBetwinE("<font color=""#DD6600"">blablabla</font>", "<font ", "</font>")

If Left(strRet, 1) = ">" Then
strRet = Right(strRet, Len(strRet) -1)
Else
strRet = Right(strRet, Len(strRet) - InStr(strRet, ">"))
End If


me puedo remitir a mi 1º comentario que decia que eran muchas lineas al dope. y nose si pensas que te copie, que este en todo tu derecho, pero yo se que no.


en fin, para estos casos, yo usaria el parser...

no solo porque busca cualquier tag, tipo fonto o div, lo q sea.. en si porque devuelve los parametros del tag, como en tu ejemplo el parametro "color" ademas del contenido del tag...

saludos
'-     coco
"Te voy a romper el orto"- Las hemorroides

<[(x)]>

<[(x)]>