VanEssa Mobilcamping - Camping Ausbau für Deinen Van - T5, T6, Mercedes u.v.m. - Startseite

Vanessa-Mobilcamping

Verkauf von Campingmöbeln
Allgemein

Vba string nach Muster suchen

11. August 2020

Dieser Beitrag enthält eine ausführliche Anleitung zur Verwendung von Zeichenfolgen in VBA. Es erklärt Zeichenfolgen in einfachen Begriffen mit klaren Codebeispielen. Ich habe es so angelegt, dass der Beitrag leicht als Kurzanleitung verwendet werden kann. Der Like-Operator kann verwendet werden, um zwei Zeichenfolgen zu vergleichen und Musterübereinstimmungen bereitzustellen. Das Verhalten des Like-Operators hängt von der Option Compare-Anweisung ab. Die Standard-Zeichenfolgenvergleichsmethode ist Option Compare Binary, was bedeutet, dass Zeichenfolgenvergleiche auf einer Sortierreihenfolge basieren, die von den binären Darstellungen der Zeichen abgeleitet wird, was A – a bedeutet. Wir beginnen mit der Präsentation der wesentlichen Regex-Syntax und zeigen Ihnen dann, wie Sie das RegEx-Objekt in VBA instanziieren. Als Nächstes beschreiben wir die Parameter des VBA RegEx-Objekts und präsentieren eine allgemeine VBA RegEx-Funktion, die Teilzeichenfolgenübereinstimmungen aus dem Eingabetext an die Funktion zurückgibt. Wir zeigen Ihnen auch ein ziemlich fortgeschrittenes Beispiel, das viele der RegEx-Funktionen enthält, die wir zuvor vorgestellt haben, und dann werden wir mit einer kurzen Diskussion über Anwendungsideen und wenn SIE VBA RegEx nicht verwenden, abschließen. Das Ergebnis ist 6, da das zweite B das 6.

Zeichen in der Zeichenfolge ist. Innerhalb der CallRegEx-Prozedur geben Sie den Eingabetext mit der Variable strInput an und definieren Ihr Suchmuster in der Variable strPattern. In diesem Beispiel haben wir eine Zeichenfolge mit einer hypothetischen E-Mail-Adresse aufgenommen, die alle Zeichentypen enthält, die in gültigen E-Mail-Adressen zulässig sind. (Ja, plus Zeichen sind erlaubt). Unabhängig davon, wie Sie diese E-Mail-Adresse innerhalb der Eingabezeichenfolge neu anordnen, wird unsere benutzerdefinierte RegEx-Funktion sie finden und zurückgeben. Das heißt, vorausgesetzt, Sie geben die richtigen Parameter an sie weiter! Die ersten beiden Parameter unserer RegEx-Funktion sind (1) die Eingabezeichenfolge und (2) die Suchmustervariablen, die wir gerade besprochen haben. Diese Parameter sind obligatorisch, und es sollte selbstverständlich sein, warum das so ist. Umgekehrt sind die nächsten drei Parameter optional: Einige der String-Funktionen wie StrComp() und Instr() usw. haben einen optionalen Compare-Parameter. Dies funktioniert wie folgt: So können wir den VBA -Operator „LIKE“ verwenden, um jede Zeichenfolge aus dem Muster mit Platzhalterzeichen abzugleichen. Schauen wir uns ein einfaches Beispiel an. Stellen Sie sich vor, Sie lesen eine Liste von Werten aus verschiedenen Zelltypen in eine Auflistung.

Sie können die Str/CStr-Funktionen verwenden, um sicherzustellen, dass sie alle als Zeichenfolgen gespeichert werden. Der folgende Code zeigt ein Beispiel für diesen optionalen Parameter Start, mit dem Sie einen Teil einer Zeichenfolge zurückgeben können. Die Position, die Sie mit Start angeben, ist die Position, von der die Zeichenfolge zurückgegeben wird. Es gibt keinen Teil der Zeichenfolge vor dieser Position zurück, unabhängig davon, ob ein Ersatz vorgenommen wurde oder nicht. Regex steht für regulären Ausdruck. Ein regulärer Ausdruck ist ein Muster, das aus einer Folge von Zeichen besteht, mit denen Sie ein übereinstimmendes Muster in einer anderen Zeichenfolge suchen können. Um Regex in VBA verwenden zu können, müssen Sie das RegExp-Objekt verwenden. Die in Klammern gesetzten Begriffe im obigen Muster bezeichnen Zeichensätze und die Pluszeichen am Ende sind Quantifizierer, die angeben, wie viele Zeichen gesucht werden.

Schließlich bezeichnet das „at“-Zeichen in der Mitte eine wörtliche Suche nach diesem Zeichen (mit anderen Worten, wir suchen nach einem Symbol). Der Punkt (.) zwischen den letzten beiden Eckpunkten sucht ebenfalls nach einem literalen Punkt, aber dieses Zeichen wurde durch einen umgekehrten Schrägstrich escapeiert, da der Punkt ein reserviertes Symbol in der RegEx-Syntax ist.