Im Model Processor können reguläre Ausdrücke (engl. Regular Expressions, RegEx) vielseitig eingesetzt werden, insbesondere zur Textverarbeitung, Filterung und Ersetzung. Dieses Kapitel gibt Ihnen einen Überblick über die wichtigsten Funktionen, Besonderheiten und Regeln im Umgang mit RegEx im Kontext des Model Processors.
Die Verarbeitung regulärer Ausdrücke basiert auf der RE2-Library von Google. Diese unterstützt den Großteil der bekannten PCRE-Syntax (Perl Compatible Regular Expressions). Eine vollständige Liste der unterstützten Funktionen finden Sie in der offiziellen RE2-Dokumentation – sie dient auch als Referenz für alle RegEx-Funktionen im Model Processor.
RegEx-Erkennung und Wildcards
Der Model Processor unterscheidet automatisch zwischen regulären Ausdrücken, Wildcards und normalem Text:
–Blau hinterlegt: Der Ausdruck wird als RegEx interpretiert.
–Nicht blau hinterlegt: Enthält der Text ein *, wird er als Wildcard erkannt. Andernfalls wird er als Text behandelt.
RegEx-Editor
Mithilfe des RegEx-Editors überprüfen Sie, ob ein Wert einem regulären Ausdruck entspricht. Sie öffnen den Editor mit einem Klick auf das RegEx-Symbol
. Diese Funktion steht Ihnen in allen Feldern mit freier Texteingabe zur Verfügung, in denen Reguläre Ausdrücke verwendet werden können, z. B. Parameternamen. Tragen Sie den zu überprüfenden regulären Ausdruck unter Ausdruck ein. Mit einem Rechtsklick auf das RegEx-Symbol aktivieren Sie die Interpretation der RegEx-Ausdrücke (
= Deaktiviert (Standardeinstellung);
= Aktiviert).
Tragen Sie unter Test-Wert einen oder mehrere Werte ein. Diese Werte werden nicht gespeichert, sondern dienen ausschließlich der Überprüfung, ob die Formulierung dem vorgegebenen Ausdruck entspricht. Ist dies der Fall, wird die entsprechende Zeile grün hervorgehoben. Zusätzlich wird der Status am Ende der Zeile symbolisch angezeigt (
= Übereinstimmung;
= keine Übereinstimmung).

Anschließend können Sie den Ausdruck auf verschiedene Weise in das Textfeld eintragen, aus dem heraus Sie den RegEx-Editor geöffnet haben:
–Regex einfügen
Die Eingabe wird als RegEx in das Textfeld eingefügt. Der Editor wird geschlossen.
–Text einfügen
Die Eingabe wird als Text in das Textfeld eingefügt. Der Editor wird geschlossen. Diese Funktion ist eine Möglichkeit, um RegEx zu deaktivieren.
Formulierungshilfen
Zeichen |
Beschreibung |
|---|---|
\ |
Markiert das folgende Zeichen als Sonder- oder als wortgenaues Zeichen. Beispielsweise entspricht "n" dem Zeichen "n". "\n" entspricht einem Zeilenumbruchzeichen. Die Sequenz "\\" entspricht "\", "\(" entspricht "(". |
^ |
Entspricht dem Anfang der Eingabe. |
$ |
Entspricht dem Ende der Eingabe. |
* |
Entspricht dem vorhergehenden Zeichen kein oder mehrere Male. "zo*" entspricht z. B. "z", "zoo". |
+ |
Entspricht dem vorhergehenden Zeichen ein oder mehrere Male. "zo+" entspricht beispielsweise "zoo", aber nicht "z". |
? |
Entspricht dem vorhergehenden Zeichen kein- oder einmal. Beispielsweise entspricht "a?ve?" dem "ve" in "never". |
. |
Entspricht allen Einzelzeichen außer einem Zeilenumbruchzeichen. |
(Muster) |
Entspricht Muster und speichert die Entsprechung. Die abgeglichene Teilzeichenfolge kann aus der sich ergebenden Matches-Auflistung unter Verwendung der Elemente [0]...[n] abgerufen werden. Verwenden Sie zum Abgleichen von in Klammern ( ) gesetzten Zeichen "\(" oder "\)". |
x|y |
Entspricht entweder x oder y. Beispielsweise entspricht "l|rot" entweder "l" oder "rot". "(l|r)ot" entspricht "lot" oder "rot". |
{n} |
n ist eine positive Ganzzahl. Entspricht exakt n Male. Beispielsweise entspricht "o{2}" nicht dem "o" in "Robert", jedoch den ersten beiden "o" in "Booooot". |
{n,} |
n ist eine positive Ganzzahl. Entspricht mindestens n Male. Zum Beispiel entspricht "o{2,}" nicht dem "o" in "Robert", aber allen "o" in "Booooot". "o{1,}" ist äquivalent zu "o+". "o{0,}" ist äquivalent zu "o*". |
{n,m} |
m und n sind positive Ganzzahlen. Entspricht mindestens n und höchstens m Male. Beispielsweise entspricht "o{1,3}" den ersten drei "o" in "Boooooot". "o{0,1}" ist äquivalent zu "o?". |
[xyz] |
Eine Gruppe von Zeichen. Entspricht einem beliebigen der enthaltenen Zeichen. "[abc]" entspricht z. B. dem "a" in "fallen". |
[^xyz] |
Eine Gruppe ausgeschlossener Zeichen. Entspricht allen nicht enthaltenen Zeichen. "[^abc]" entspricht z. B. dem "f" in "fallen". |
[a-z] |
Ein Zeichenbereich. Entspricht allen Zeichen im angegebenen Bereich. Beispielsweise entspricht "[a-z]" allen alphabetischen Zeichen in Kleinschreibung des Bereichs "a" bis "z". |
[^m-z] |
Ein ausgeschlossener Bereich an Zeichen. Entspricht allen Zeichen, die im angegebenen Bereich nicht enthalten sind. Zum Beispiel entspricht "[m-z]" allen Zeichen, die im Bereich "m" bis "z" nicht enthalten sind. |
Beispiele
Regulärer Ausdruck |
Beschreibung |
Beispiel |
|---|---|---|
[a-zA-Z]*_[a-zA-Z]* |
Eine beliebige alphabetische Zeichenfolge mit einem Unterstrich |
user_tbx |
[0-9]{5} |
Fünf beliebige Zahlen |
12345 |
^.{7}$ |
Beliebige 7 Zeichen |
t_p.prt |
^[A-Z]{1}[a-z]{2,10} |
Am Beginn ein Großbuchstabe und dann zwei bis 10 Kleinbuchstaben |
Tnutzer |
[0-9]{2}\.[0-9]{2}\.[0-9]{4} |
Deutsches Datumsformat (TT.MM.JJJJ) |
01.07.1975 |
[0-9]{4}-[0-9]{2}-[0-9]{2} |
Datumsformat ISO 8601 (JJJJ-MM-TT) |
1975-07-01 |
[0-9]{2}/[0-9]{2}/[0-9]{4} |
Datumsformat US (MM/TT/JJJJ) |
01/07/1975 |
[0-9]{2}-[a-zA-Z]{3}-[0-9]{4} |
Englisches Datumsformat |
01-Jul-1975 |
[a-zA-Z]{3,9}\s[0-9]{1,2},\s[0-9]{4} |
Englisches Datumsformat (ausgeschrieben) |
July 01, 1975 |
(?!)^(ST|B00|DEF).*$ |
combstatefilter="(?!)^(ST|B00|DEF).*$" Es werden alle kombinierten Ansichten verwendet, die nicht mit ST, B00 oder DEF beginnen. Dadurch werden die Creo Parametric Standardansichten "Standard alle" bzw. "Default all" herausgefiltert. |
Gefiltert werden kombinierte Ansichten mit: ST* B00* DEF* |
^ABC |
Beginnt mit ABC |
ABCDEF |
XYZ$ |
Endet mit XYZ |
UVWXYZ |
^. {0,3}$ |
Zeichenfolge mit maximal 3 Zeichen |
AB |
^\d+\.\d+\.\d+$ |
Versionsnummer |
1.0.3 |
^[A-Z] {3}-\d{4}$ |
Format |
ABC-1234 |
\b[A-Z] {2}\d{6}\b |
Seriennummer |
AB123456 |
\s{2,} |
Mehr als ein Leerzeichen (zur Formatprüfung) |
Maßstab: 1:100 |
^DWG\d{6}$ |
Zeichnungsnummer |
DWG123456 |
^\d+(.\d+)?\s?(mm |
Maßeinheit |
cm |
^±\d+(\.\d+)?$ |
Toleranzangabe |
±0.2 |
^\d{1,4}x\d{1,4}x\d{1,4}$ |
Maßkette: Breite x Höhe x Tiefe |
120x50x80 |
^PART_[0-9]{3}$ |
Einzelteil |
PART_001 |
Hinweis: Wenn Sie bei der Verwendung von RegEx auf unerwartetes Verhalten stoßen, prüfen Sie bitte zunächst: –ob der Ausdruck korrekt als RegEx erkannt wurde (blau markiert), –ob Groß-/Kleinschreibung eine Rolle spielt, –ob Sie ggf. einen Full Match benötigen. |