Avatar billede stry Nybegynder
13. august 2005 - 23:17 Der er 9 kommentarer og
1 løsning

Udrag tekst fra .htm-fil i VB6

Jeg har en linje som kunne se således ud:

<td colspan="2" class="subheader"><strong>Rockwool A/S</strong></td>

..og det eneste der skal med i varFirma -variabel er, i dette tilfælde, "Rockwool A/S".

Mønstret er det samme hver gang:...<strong>Firmanavn</strong>....
så det kan vel bruges til at identificere "Firmanavn", men hvordan?

Det skal være ren VB - ikke RegExp.

Nogen med et bud - på forhånd tak.
Avatar billede sjh Nybegynder
13. august 2005 - 23:34 #1
Option Explicit

Private Sub Form_Load()
Dim strTest As String
  strTest = "<td colspan=""2"" class=""subheader""><strong>Rockwool A/S</strong></td>"
  Me.Caption = FindTags(strTest, "<strong>", "</strong>")
End Sub

Public Function FindTags(strData As String, strTag1 As String, strTag2 As String) As String
Dim intStart As Long
Dim intEnd As Long
  intStart = InStr(1, strData, strTag1, vbTextCompare)
  If intStart > 0 Then
    intStart = (intStart + Len(strTag1))
    intEnd = InStr(intStart, strData, strTag2, vbTextCompare)
    If intEnd > 0 Then
      FindTags = Mid$(strData, intStart, (intEnd - intStart))
    End If
  End If
End Function
Avatar billede stry Nybegynder
13. august 2005 - 23:41 #2
tak -
kigger lige på det..
Avatar billede sjh Nybegynder
13. august 2005 - 23:51 #3
' Du kan også tag alle tags sådan.. HUSK en List1 ;)
Option Explicit

Private Sub Form_Load()
Dim i As Integer
Dim strTest As String
Dim arrTest As Variant

  strTest = "<td colspan=""2"" class=""subheader""><strong>Rockwool A/S</strong></td><strong>Rockwool A/S 2</strong>"

  arrTest = FindTags(strTest, "<strong>", "</strong>")
  For i = LBound(arrTest) To UBound(arrTest)
    List1.AddItem arrTest(i) ' <- Tilføj til List1
  Next
End Sub

Public Function FindTags(strData As String, strTag1 As String, strTag2 As String) As Variant
Dim intEnd As Long
Dim intStart As Long
Dim arrTags() As String
Dim intTagsCount As Integer

  intStart = 1
  Do While intStart
    intStart = InStr(intStart, strData, strTag1, vbTextCompare)
    If intStart > 0 Then
      intStart = (intStart + Len(strTag1))
      intEnd = InStr(intStart, strData, strTag2, vbTextCompare)
      If intEnd > 0 Then
        intTagsCount = (intTagsCount + 1)
        ReDim Preserve arrTags(1 To intTagsCount) As String
        arrTags(intTagsCount) = Mid$(strData, intStart, (intEnd - intStart))
       
      End If
    End If
  Loop

  If intTagsCount > 0 Then
    FindTags = arrTags
      Else
    FindTags = Array()
  End If
End Function
Avatar billede stry Nybegynder
14. august 2005 - 00:12 #4
jeg ""-tegnene giver problemer i strTest

nogen forslag?
Avatar billede sjh Nybegynder
14. august 2005 - 00:15 #5
strTest = "<td colspan=""2"" class=""subheader""><strong>Rockwool A/S</strong></td><strong>Rockwool A/S 2</strong>"

;)
Avatar billede sjh Nybegynder
14. august 2005 - 00:16 #6
arr.. der skal være 2 "" for at få 1 .. eksperten piller 1 ud ved: "<td colspan=""2"" class
Avatar billede stry Nybegynder
14. august 2005 - 11:24 #7
>>Sjh
Det virker fint - læg et svar.

Har du også lige en hurtig kode til at kontrollere hvor mange gange "<br>" optræder i en sætning? :-)

Tak for hjælpen.
Avatar billede stry Nybegynder
14. august 2005 - 12:56 #8
Har selv løst "<br>" -problematikken:

Public Function TaelBR(StrNg As String) As Integer
Dim tmpStr As String
Dim tmpNr As Integer
tmpNr = 0
For X = 1 To Len(StrNg)
    tmpStr = Mid(StrNg, X, 4)
    If tmpStr = "<br>" Then
        tmpNr = tmpNr + 1
        TaelBR = tmpNr
    End If
Next
End Function
Avatar billede sjh Nybegynder
14. august 2005 - 13:58 #9
du kan også lave din funktion multi

Public Function CountTags(strData As String, strTag As String) As Long
Dim i As Long
Dim tmpTag As String
Dim intCount As Long
  For i = 1 To Len(strData)
    tmpTag = Mid$(strData, i, Len(strTag))
    If LCase$(tmpTag) = LCase$(strTag) Then
      intCount = (intCount + 1)
    End If
  Next
  CountTags = intCount
End Function

Private Sub Form_Load()
  Me.Caption = CountTags("<br><BR><BR><BR><BR><BR><br><br>", "<br>")
End Sub
Avatar billede stry Nybegynder
14. august 2005 - 14:02 #10
Endnu engang tak for hjælpen.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester

IT-JOB

Forsvarsministeriets Materiel- og Indkøbsstyrelse

Cyberdivisionen søger IT-Supporter til lokal IT støtte i Oksbøl

Unik System Design A/S

QA Engineer for AI-first development

KMD A/S

Projektleder

TD SYNNEX Denmark ApS

Sales Coordinator

Netcompany A/S

IT Consultant