Moin, Moin zusammen,
ich versuche folgende Zeile möglichst gut mit RegEx zu beschreiben.
[Karl-Heinz Mustermann] Kalkül #YKBL557397530OE
Folgender Ausdruck hat mich bisher zum Erfolg geholfen:
Wie bekomme ich den vorgenannten String noch präziser beschrieben?
In den [] kommen nur "Namen" vor, gefolgt von einem - belibigem - Wort und nach der Raute (#) folgt eine ID unterschiedlicher Länger, aber nur mit Großbuchstaben und Ziffern.
Aktuell experimentiere ich mit folgendem Promt:
@Prompt([Ok];"Test";@If(@Matches(@LowerCase("[Karl-Heinz S] Kalkül #YKBL557397530OE");"[+{!0-9}]*#*");"Passt";"Falsch"))
Folgende Ideen führen leider immer zu einem negativen Ergebnis ("Falsch")- +{A-z} enthält keine Umlaute und keine Bindestriche etc.
- Eine Verkettung, z.B. +{A-zü} findet das "Kalkühl" ebenfalls nicht
Wie bekomme ich für die ID ein Pattern "Nur Großbuchstaben oder Ziffern" hin, +{A-Z0-9} klappt nicht?
:-:
Meine "Wissenquelle (http://"https://www.ibm.com/support/knowledgecenter/SSVRGU_9.0.1/com.ibm.designer.domino.main.doc/H_MATCHES.html")"
Vielen Dank und beste Grüße
Moin,
Danke für den Vorschlag. Leider funktioniert der Vorschlag nur bei Verwendung von Java.
Im @Formel Umfeld scheint das nicht möglich zu sein. :-:
Zunächst kam die Fehlermeldung "Ungültiges Textmuster", da in den @Funktionen geschweifte statt normale Klammern verwendet werden.
Beste Grüße
Martin
PS: Ich habe in meiner @Funktion jetzt das @LowerCase entfernt und für den Bereich der "ID" such ich nach "Keine kleinbuchstaben":
@Prompt([Ok];"Test";@If(@Matches("[Karl-Heinz S] Kalkül #YKBL557397530OE";"[+{!0-9}]*#+{!a-z}");"Passt";"Falsch"))
PPS: Um den letzten Stern zu eleminieren wäre noch "Nur ein Wort" (analog \b) als Pattern nett, habe ich aber auch nicht gefunden.