VBA-ähnlicher Operator

In VBA können Sie zwei Strings mit dem vergleichen Mögen Operator, um die Übereinstimmung der Zeichenfolgen zu überprüfen. In diesem Tutorial erfahren Sie, wie Sie diesen Operator mit verschiedenen Mustern verwenden.

Wenn Sie lernen möchten, wie man Strings in VBA vergleicht, klicken Sie hier: VBA Compare Strings - StrComp

Wenn Sie lernen möchten, wie man Vergleichsoperatoren verwendet, klicken Sie hier: VBA-Vergleichsoperatoren - Nicht gleich & Mehr

Verwenden des Like-Operators zum Vergleichen von zwei Strings

Mit dem Like-Operator können wir überprüfen, ob eine Zeichenfolge mit einem bestimmten Text beginnt, diesen einschließt usw. Standardmäßig ist die Mögen Operator vergleicht Zeichen mit der Binary-Methode. Dies bedeutet, dass beim Operator die Groß-/Kleinschreibung beachtet wird. Wenn Sie die Groß-/Kleinschreibung nicht berücksichtigen möchten, müssen Sie Folgendes eingeben: Option Text vergleichen ganz oben in Ihrem Modul. Mit dieser Methode wird die Mögen Operator betrachtet „S“ und „s“ als dieselben Zeichen. In unseren Beispielen verwenden wir den standardmäßigen Vergleich, bei dem die Groß-/Kleinschreibung beachtet wird.

Wenn die Übereinstimmung vorhanden ist, wird die Mögen Als Ergebnis gibt der Operator True zurück, andernfalls False.

Zuerst schauen wir uns das einfache Beispiel an, in dem wir prüfen wollen, ob unsere String-Variable mit beginnt Herr. Dazu müssen Sie am Ende des passenden Textes ein Sternchen (*) einfügen (Herr*). Hier ist der Code:

1234567891011121314 Abo LikeDemo()Dim strName als StringDim blnResult As BooleanstrName = "Herr Michael James"Wenn strName wie "Mr*" ThenblnResult = TrueAndersblnResult = FalseEnde WennEnd Sub

In diesem Beispiel wollen wir prüfen, ob string strName beginnt mit Herr und geben True oder False in der Variablen zurück blnErgebnis.

Zuerst setzen wir den Wert von strName zu Herr Michael James:

1 strName = "Herr Michael James"

Dann verwenden wir die Mögen Operator in der If-Anweisung:

12345 Wenn strName wie "Mr*" ThenblnResult = TrueAndersblnResult = FalseEnde Wenn

Als die strName beginnt mit Herr, das blnErgebnis gibt True zurück:

Bild 1. Mit dem Like-Operator prüfen, ob die Zeichenfolge mit bestimmten Zeichen beginnt

Verwenden des Like-Operators mit verschiedenen übereinstimmenden Mustern

Der Like-Operator kann die Übereinstimmung von zwei Zeichenfolgen basierend auf unterschiedlichen Mustern überprüfen. Hier ist die Liste der möglichen passenden Muster:

Mustercode

Art des Matchings

*

Entspricht 0 oder mehr Zeichen

?

Entspricht einem einzelnen Zeichen

#

Entspricht einer einzelnen Ziffer

[Zeichen]

Entspricht einem einzelnen Zeichen aus einer Zeichenliste

[A-Z]

Entspricht jedem Großbuchstaben aus dem Alphabet

[A-Za-z]

Entspricht jedem Zeichen aus dem Alphabet

[!chars]

Entspricht einem einzelnen Zeichen mit Ausnahme einer Zeichenliste

Jetzt können wir sehen, wie diese Muster im Code verwendet werden. Hier ist das Beispiel für mehrere Muster:

Übereinstimmung mit einem einzelnen Zeichen:

1234567 strText1 = "ABCDE"Wenn strText1 Like "AB?DE" ThenblnResult1 = TrueAndersblnResult1 = FalschEnde Wenn

Übereinstimmung mit einer einzelnen Ziffer:

1234567 strText2 = "AB7DE"Wenn strText2 wie "AB#DE" ThenblnResult2 = TrueAndersblnResult2 = FalschEnde Wenn

Passende Großbuchstaben aus dem Alphabet:

1234567 strText3 = "ABCDE"Wenn strText3 wie "AB[A-Z]DE" ThenblnResult3 = TrueAndersblnResult3 = FalschEnde Wenn

Keine Übereinstimmung mit Großbuchstaben aus dem Alphabet:

1234567 strText4 = "AB7DE"Wenn strText4 wie "AB[!A-Z]DE" ThenblnResult4 = TrueAndersblnResult4 = FalschEnde Wenn

Übereinstimmung mit einem beliebigen Zeichen aus dem Alphabet (Groß- oder Kleinschreibung):

1234567 strText5 = "ABcDE"Wenn strText5 wie "AB[A-Za-z]DE" ThenblnResult5 = TrueAndersblnResult5 = FalschEnde Wenn

Wenn Sie den Code ausführen, können Sie sehen, dass die Mögen Operator gibt True in . zurück blnErgebnis Variablen für jeden Vergleich:

Bild 2. Verwenden des Like-Operators mit verschiedenen übereinstimmenden Mustern

wave wave wave wave wave