# Position eines Wortes in einem String ermitteln



## spex (28. Dezember 2007)

Tach,

Ich steh in VB6 vor folgendem Problem:

Ich möchte aus einem String heraus einen bestimten Text filtern. Dieser Text Variiert und besteht aus HTML Code, was allerdings nichts zur Sache tut.

Da ich in VB keine Funktion zuv Verfügung habe wie in PHP z.B die Preg_Match() Funktion, möchte ich die Position eines Wortes in einem String (der den HTML-Text enthält), bestimmen, damit ich dann, ab da, den String mit MID() kürzen kann und so an das gesuchte Wort komme. Hier als Beispiel:

Der String enthält folgenden Text:


```
<a href="http://google.de">THIS IS ANY TEXT</a>
uit85iuztzt06-5677rfr70r677tr687r0
	IMMERGLEICH:		HIERDASGESUCHTEWORT
	jhlkjh
hkjghhjkgjh
hjkgkhjghkj
ghjgkjhghkjghkjgjhkghjkg
	hjghkjghkjghkjghkjgkjhgj
	hjkghjk
	ghjgkjhgkjhgjhgkjgj
	<a href="http://google.de">THIS IS ANY TEXT</a>
v<a href="http://google.de">THIS IS ANY TEXT</a>
```


Im Beispiel ist das Wort "IMMERGLEICH:" zu finden, der Text ist immer gleich und dient als Anhaltspunkt um das Wort "HIERDASGESUCHTEWORT" zu finden.
Das Wort "HIERDASGESUCHTEWORT" Ist ein Vareirender Text der aber immer nach "IMMERGLEICH:" steht.

Was ich nun brauche ist das Wort "HIERDASGESUCHTEWORT".

*Wie könnt ich das am besten anstellen*

Gruß


----------



## wincnc (28. Dezember 2007)

Hallo, hier ein Beispiel:

```
Private Sub Command1_Click()
Dim Pos As Integer
Dim Nr As Integer
Dim aText As String
Dim SuchWort As String

  SuchWort = "IMMERGLEICH:"
  
  Nr = FreeFile
  Open "D:\Test.txt" For Input As #Nr
    aText = Input(LOF(Nr), #Nr)
  Close #Nr
  
  Pos = InStr(1, aText, SuchWort, vbTextCompare)
  
  If Pos > 0 Then
    MsgBox "Das gesuchte Wort beginnt bei Position: " & CStr(Pos)
    MsgBox Mid(aText, Pos, Len(SuchWort))
  Else
    MsgBox "Position nicht gefunden"
  End If
End Sub
```


----------

