Access - filtro de lectura

 
Vista:

filtro de lectura

Publicado por felix (183 intervenciones) el 26/09/2007 00:31:18
wenas e creado un formulario con un WebBrowser con el cual descargo una pag. y añado el codigo en un campo memo, acontinuacion creo un filtro de inicio y uno de fin que va recorriendo el texto con mid$ agregandome el contenido de texto que existe entre el filtro de inicio y el de fin en un campo. Bien hasta ahi, el problema es que por ejemplo necesito extraer el contenido de otra posicion del codigo pero me coincide el mismo juego de caracteres con lo cual los filtros pierden su validez.
mi pregunta es existe algun modo diferente de hacer esto, decir a access cuando deve empezar a escribir y cuando parar? "en un texto inestable"

....Espero que se entienda habeces es dificil describir los problemas jajajaja......

Gracias de antemano
Saludos felix
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Alejandro

Extraer contenido variable de una página web en un formulario

Publicado por Alejandro (4142 intervenciones) el 21/08/2023 16:20:49
Si estás tratando de extraer contenido variable de una página web y necesitas definir puntos de inicio y fin en un campo Memo, es posible que necesites utilizar código VBA más sofisticado para lograr esta tarea de manera más flexible. Aquí tienes un enfoque que podría funcionar para tu caso:

1. Uso de expresiones regulares:
En lugar de depender únicamente de filtros de inicio y fin, podrías considerar el uso de expresiones regulares para extraer contenido específico de una página web. Las expresiones regulares te permiten buscar patrones de texto más complejos y flexibles.

2. Utilizar el objeto WebBrowser:
- Agrega un control WebBrowser a tu formulario.
- Utiliza el evento `DocumentComplete` del control WebBrowser para acceder al contenido de la página web después de que se haya cargado.
- En el evento, puedes utilizar expresiones regulares (la clase `RegExp` en VBA) para buscar y extraer el contenido deseado.

3. Ejemplo de código VBA:
Aquí tienes un ejemplo simple de cómo podrías usar expresiones regulares para extraer contenido entre dos patrones:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
Private Sub WebBrowser1_DocumentComplete(ByVal pDisp As Object, URL As Variant)
    Dim webDoc As HTMLDocument
    Dim htmlContent As String
    Dim regEx As Object
    Dim matches As Object
    Dim match As Object
 
    Set webDoc = WebBrowser1.Document
    htmlContent = webDoc.body.innerHTML
 
    Set regEx = CreateObject("VBScript.RegExp")
    With regEx
        .Global = True
        .MultiLine = True
        .IgnoreCase = False
        .Pattern = "PatrónInicio(.*?)PatrónFin"
    End With
 
    If regEx.Test(htmlContent) Then
        Set matches = regEx.Execute(htmlContent)
        For Each match In matches
            ' Aquí puedes hacer algo con cada coincidencia, como agregarla a un campo Memo
        Next match
    End If
 
    Set regEx = Nothing
    Set webDoc = Nothing
End Sub

En este ejemplo, "PatrónInicio" y "PatrónFin" son las expresiones que delimitan el contenido que deseas extraer.

Ten en cuenta que las expresiones regulares pueden ser complejas y tomar tiempo para dominar. Asegúrate de ajustar las expresiones regulares según las necesidades específicas de tu caso.

Recuerda que extraer contenido de una página web puede ser delicado y puede requerir ajustes dependiendo de la estructura de la página y cómo cambia con el tiempo.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar