VBS InStr

VBS InStr
VBS InStr

VBS InStr

Du willst mit der VBS InStr Funktion überprüfen, ob ein String sich innerhalb eines Anderen befindet?

Dann freut es mich, Dir in diesem Beitrag die passende InStr-Funktion vorzustellen!

Eventuell hast Du zu einem späteren Zeitpunkt auch Interesse an einem der folgenden Beiträge: VBScript Array, MsgBox.

Hintergrund – VBS InStr

Zu gut kennt man es als Softwareentwickler, überprüfen zu müssen, ob ein String ein Teil eines anderen Strings ist.

Je nach Aufgabenstellung ist es auch von Bedeutung, an welcher exakten Position dieser andere String ist, bzw. ab wo Er startet.

Eine vergleichbare Funktion finden wir im .NET-Umfeld, die Contains-Funktion, Welche uns leider in VBScript nicht zur Verfügung steht.

Mach dir jedoch keine Sorgen, denn auch in VBScript haben wir die Möglichkeit eine ähnliche Methode zu verwenden.

Die Nadel im Heuhaufen – String durchsuchen

Die Möglichkeit die uns VBS (Visual Basic Script) hier bietet, ist die InStr Funktion.

„InStr“ ermittelt für uns in einem angegebenen String die Position eines Such-Strings.

Wenn der Such-String nicht innerhalb des Ziel-Strings gefunden wird, wird von der Funktion eine 0 zurückgegeben.

Wir haben sogar die Möglichkeit den Modus für den Vergleich zu bestimmen, wozu wir sofort kommen werden.

Die InStr-Funktion aus VBS

Schauen wir uns nun die Signatur der InStr-Funktion an:

Parameter

[Optional] start [Integer]

Der erste Parameter der Funktion gibt die Start-Position der Suche an.

Wenn die Start-Position ausgelassen wird, beginnt die Suche automatisch am Anfang.

string1 [String]

Hierbei handelt es sich um den zu durchsuchenden String.

string2 [String]

Dieser String gibt an, wonach im ersten String gesucht werden soll.

[Optional] compare [Integer]

Hiermit legen wir die Art des Vergleichs aus folgender Tabelle fest:

NameWertBeschreibung
vbUseCompareOption-1Führt Vergleich mit Option Compare-Anweisung aus.
vbBinaryCompare0Verwendet einen binären Vergleich
vbTextCompare1Nutzt einen Textvergleich
vbDatabaseCompare2Verwendet bei Microsoft Access einen Datenbankvergleich
VBS InStr Compare Optionen

Falls man diese Option auslässt, wird ein binärer Vergleich genutzt.

Die beiden für uns bedeutsamen Arten sind Diese: vbBinaryCompare und vbTextCompare.

Mit der Option „vbBinaryCompare“ wird binär verglichen, dass heißt, dass die Zeichenfolgen eine exakte Übereinstimmung haben müssen.

Die vbTextCompare-Option gibt bereits bei einer textlichen Übereinstimmung – ohne Groß– und Kleinschreibung – positives Feedback.

Code – VBS InStr

Hier möchte ich Dir ein paar Beispielcodes zeigen:

Dim str
str = "Hello my world"
Dim search
search = "my"
Dim res
res = InStr(1, str, search)
MsgBox(res)

In diesem Beispiel wird der String als „str“ deklariert und danach mit dem Wert „Hello my world“ befüllt.

Anschließend deklarieren wir einen zusätzlichen String namens „search“, wonach wir suchen werden, Ihm weisen wir den Wert „my“ zu.

Im vorletzten Schritt deklarieren wir die Variable namens „res“, Welche den Rückgabewert unseres „InStr“-Aufrufs zwischenspeichern wird.

In diesem Beispiel bekommen wir den Rückgabewert 7, da das Wort „my“ ab der 7. Position startet.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.