Ein regulärer Ausdruck ist ein Suchmuster. Er kann eine feste Zeichenfolge finden oder mehrere ähnliche Eingaben erfassen, etwa alle Rufnummern mit einem bestimmten Anfang. Ob ein Muster passt, hängt auch davon ab, an welcher Stelle Sie es einsetzen.
Wo Suchmuster verwendet werden
| Stelle | Was wird geprüft? | Besonderheit |
|---|---|---|
| Ausgeschlossene Kontakte | Rufnummer, Absenderadresse oder Name, abhängig vom Kanal | Ein Treffer schließt den Kontakt aus; Groß- und Kleinschreibung zählt. |
| VIP-Klassenfilter | der Absender der Konversation | Der Filter gilt nur in den eingestellten Wissensgebieten und Kanälen. |
| Vorauswahl von Textbausteinen | die Nachricht des Kunden | Muster und Nachricht werden vor der Prüfung in Großbuchstaben umgewandelt; siehe unten. |
| Worterkennung | erkannte Wörter und anschließend der erkannte Text | Der Anzeigetext eines verbundenen Ausgangs ist das Muster. Groß- und Kleinschreibung wird nicht unterschieden. |
Grundsyntax
Ohne besondere Zeichen sucht ein Muster nach dem geschriebenen Text:
rechnung findet auch „Abrechnung“. Ein Treffer irgendwo in der Eingabe
genügt. Für einen bestimmten Anfang oder eine vollständige Eingabe verwenden
Sie Anker.
| Zeichen | Bedeutung | Beispiel |
|---|---|---|
^ |
Anfang der Eingabe | ^0900 — beginnt mit 0900 |
$ |
Ende der Eingabe | @example[.]com$ — endet mit dieser Domain |
[0-9] |
eine Ziffer | ^[0-9]+$ — nur Ziffern |
[abc] |
eines der aufgeführten Zeichen | [abc] — a, b oder c |
[^0-9] |
ein Zeichen, das keine Ziffer ist | [^0-9] — findet etwa ein Pluszeichen oder Leerzeichen |
. |
ein Zeichen außer einem Zeilenumbruch | a.b — etwa „a-b“ |
* |
das vorherige Zeichen oder die Gruppe beliebig oft, auch keinmal | [0-9]* |
+ |
das vorherige Zeichen oder die Gruppe mindestens einmal | [0-9]+ |
? |
das vorherige Zeichen oder die Gruppe keinmal oder einmal | storno? — „storn“ oder „storno“ |
{n} |
genau n Wiederholungen | [0-9]{5} — fünf Ziffern |
{n,m} |
n bis m Wiederholungen | [0-9]{2,4} — zwei bis vier Ziffern |
| |
Alternative | rechnung|abrechnung |
(…) |
eine Gruppe | (rechnung|storno) |
\ |
nimmt dem folgenden Sonderzeichen seine besondere Bedeutung | \+49 — ein tatsächliches Pluszeichen und 49 |
Ein Punkt steht ohne Maskierung für ein beliebiges Zeichen. Für einen
tatsächlichen Punkt schreiben Sie \. oder [.]. In einem Filterfeld
braucht eine Maskierung nur einen Backslash; Anführungszeichen um das ganze
Muster gehören nicht dazu.
Beispiele für Rufnummern und Adressen
| Muster | Beispiel mit Treffer | Beispiel ohne Treffer |
|---|---|---|
^0900 |
0900123456 |
0890900123 |
^\+4989 |
+49891234567 |
+49301234567 |
^\+49891234567$ |
+49891234567 |
+498912345678 |
@example[.]com$ |
kunde@example.com |
kunde@exampleXcom |
^[0-9]{5}$ |
12345 |
123456 |
Verwenden Sie die Schreibweise, die tatsächlich in der Konversation steht.
^\+4989 passt nicht auf 0891234567; der Filter ergänzt keine Landesvorwahl
und entfernt keine Leerzeichen. Prüfen Sie die übermittelte Nummer in der
Konversationsübersicht, bevor Sie einen Filter festlegen.
Vorauswahl von Textbausteinen
Die Vorauswahl wandelt sowohl die Nachricht als auch das Muster in
Großbuchstaben um. rechnung findet deshalb „Rechnung“ ebenso wie
„RECHNUNG“.
Diese Umwandlung betrifft auch Buchstaben in Sonderkürzeln: Aus \d wird
\D, aus \w wird \W und aus \b wird \B. Dadurch ändert sich deren
Bedeutung. Verwenden Sie hier einfache Suchwörter, Alternativen und
Zeichenklassen:
rechnung|abrechnungfür die beiden Wörter;kundennummer[ :]*[0-9]+für „Kundennummer: 12345“;[0-9]{5}für eine Folge von fünf Ziffern.
Auch Optionen mit Buchstaben innerhalb des Musters werden umgewandelt. Übernehmen Sie einen Ausdruck für dieses Feld deshalb nicht ungeprüft aus einem allgemeinen Regex-Werkzeug.
Der Treffer allein wählt den Textbaustein noch nicht aus. Für die Sprache der Konversation werden die Gewichte aller passenden Filter zusammengezählt; danach ordnet der Agent die Vorschläge.
Worterkennung
Für die Worterkennung steht das Muster im Anzeigetext des Ausgangs.
rechnung|abrechnung erfasst beide Wörter. Soll „ja“ nur als eigenes Wort
zählen, verwenden Sie \bja\b; das findet „ja“, aber nicht „Januar“.
Dieses Kürzel bleibt hier erhalten, weil der Vergleich Muster und Text in
Kleinbuchstaben umwandelt.
Sind mehrere Ausgänge passend, führt der Flow über den ersten passenden verbundenen Ausgang weiter. Ein nicht verbundener Ausgang ist kein ausführbarer Zweig. Prüfen Sie auch die Reihenfolge, wenn ein allgemeines Muster einem genaueren vorausgeht.
Ein Muster prüfen
- Nehmen Sie mindestens eine tatsächliche Eingabe, die passen soll, und eine, die nicht passen soll. Ergänzen Sie ähnlich aussehende Gegenbeispiele.
- Prüfen Sie zuerst die Syntax. Ein offenes
[oder(ist beispielsweise kein vollständiges Muster. - Bei Ausgeschlossene Kontakte tragen Sie die Eingabe unter Testeintrag ein. Ein ungültiges Muster färbt das Musterfeld rot; ein fehlender Treffer färbt den Testeintrag rot.
- Prüfen Sie VIP-Filter mit der tatsächlich übermittelten Absenderangabe und Textbausteinfilter mit einer Nachricht in der eingestellten Sprache.
- Testen Sie Worterkennung mit einem Anruf, einschließlich eines Satzes, der keinen Ausgang treffen soll. Die Aussprache und der erkannte Text können voneinander abweichen.
Ein syntaktisch gültiges Muster kann fachlich zu breit sein. 0900 trifft
die Ziffern an jeder Stelle einer Nummer; ^0900 nur am Anfang. Muster wie
.* passen auf praktisch jede Eingabe und sind für gezielte Ausschlüsse
ungeeignet.