Reguläre Ausdrücke

Reguläre Ausdrücke ermöglichen die Suche nach Zeichenketten in Text, z. B. nach bestimmten Zeichen, Wörtern oder Zeichenketten, die einem bestimmten Muster entsprechen.  

In Model Review werden sie unter anderem häufig in Verbindung mit der Einhaltung von Namenskonventionen oder zum Sortieren von Beschriftungstexten im Projektmodell anhand sehr präziser Angaben verwendet.

Sonderzeichen

Sonderzeichen in regulären Ausdrücken ermöglichen es, den zu suchenden Text flexibler zu definieren. Die folgenden Sonderzeichen werden verwendet:

+ * ? . [ ] ^ ( ) | \

In den folgenden Abschnitten wird die Verwendung der einzelnen Sonderzeichen beschrieben:

Punkt

Mithilfe eines Punkts (".") können Sie nach einem beliebigen einzelnen Zeichen suchen.

Ausdruck

Bedeutung

Findet

Findet nicht

390-.

Findet die Zeichenfolge "390-" und ein beliebiges folgendes Zeichen.

390-A, 390-1, 390--

390-A1, 1390-1

Änderung . Veröffentlicht

Findet die Zeichenkette "Änderung", ein beliebiges folgendes Zeichen und dann die Zeichenkette "Veröffentlicht".

Änderung A Veröffentlicht

Änderung 1 Veröffentlicht

Änderung # Veröffentlicht

Änderung A1 Veröffentlicht

ÄnderungAVeröffentlicht

Eckige Klammern

Eckige Klammern ("[ ]") definieren eine Zeichenklasse und vergleicht jedes beliebige einzelne Zeichen mit den durch die Klammern eingeschlossenen Zeichen. Innerhalb der Klammern verlieren alle Sonderzeichen ihre Bedeutung. Ausgenommen davon ist "^"; wenn dieses Zeichen in einer Klammer als erstes Zeichen verwendet wird, hat es die Bedeutung NICHT für die danach angegebenen Zeichen.

In eckigen Klammern können auch Wertebereiche angegeben werden.

Ausdruck

Bedeutung

Findet

Findet nicht

[akm]

Ein Zeichen: a, k oder m

a, k, m

Akm, ak, G

[a-z]

Ein beliebiger Buchstabe

A, b, c, d

1, 2, -, #

[^akm]

Ein beliebiger Buchstabe mit Ausnahme von a, k oder m.

C, f, G,

Am (da es sich um zwei Zeichen handelt)

A, k, m

[0-9]

Eine beliebige Ziffer

0, 4, 7

A, #, z

[a-z][a-z]

Zwei beliebige Buchstaben

AB, BC, DE

A (nur ein Buchstabe)

A1

12

Asterisk

Ein Asterisk (*) wird einem Ausdruck nachgestellt und gibt an, dass der vorhergehende Ausdruck gar nicht, einmal oder mehrmals auftreten kann.

Ausdruck

Bedeutung

Findet

Findet nicht

Ab*c

"A", danach null bis mehrere "b", am Ende ein "c".

Ac

Abc

Abbbbbbbc

Bbb

Abcd

[a-z]*

Eine beliebige Anzahl beliebiger Buchstaben (gleichbedeutend mit "nur Buchstaben", wobei "keine Buchstaben" inbegriffen ist)

A

Bob

AAAAA

Stahl

<Leer> (da * auch für null Vorkommnisse stehen kann)

STAHL230

12

AA-##

Pluszeichen

Ein Pluszeichen (+) wird einem Ausdruck nachgestellt und gibt an, dass der vorhergehende Ausdruck einmal oder mehrmals auftreten kann.

Ausdruck

Bedeutung

Findet

Findet nicht

Ab+c

"A", danach ein oder mehrere "b", am Ende ein "c".

Abc

Abbbbbbbc

Ac

Bbb

Abcd

[a-z]+

Eine beliebige Anzahl beliebiger Buchstaben (gleichbedeutend mit "nur Buchstaben")

Bob

AAAAA

Stahl

STAHL230

12

AA-##

<Leer>

Fragezeichen

Ein Fragezeichen ("?"): Wird einem Ausdruck ein Fragezeichen (?) nachgestellt, bedeutet dies, dass dieser Ausdruck stehen kann, aber nicht muss.

Ausdruck

Bedeutung

Findet

Findet nicht

Ab?c

"A", danach möglicherweise ein "b", am Ende ein "c"

Ac

Abc

Abbc

Abcd

390-[a-z][a-z]?

"390-", danach ein Buchstabe und eventuell ein zweiter Buchstabe

390-A

390-AB

390-11

390-

390-ABC

Pipe

Das Pipe-Zeichen (|) ist ein logisches OR zwischen zwei Ausdrücken (normalerweise in Klammern).

Ausdruck

Bedeutung

Findet

Findet nicht

(390|241)-[a-z]+

Entweder "390" oder "241", danach ein "-" und ein oder mehrere Buchstaben

390-A

241-A

241-AB

200-A

241

241-

Gemäß (MS2377|CS123)

"Gemäß", danach entweder "MS2377" oder "CS123"

Gemäß MS2377

Gemäß CS123

Gemäß

Gemäß MS3222

 

390-([abc]|[123])

"390-", danach einer der Buchstaben "a", "b" oder "c" ODER eine der Ziffern "1", "2" oder "3".

390-A

390-3

390-F

390-

Backslash, wenn Sonderzeichen als Literale gelesen werden müssen

Wenn Sie nach einem Zeichen suchen müssen, das als Sonderzeichen definiert ist, können Sie diesem einen Backslash voranstellen und dadurch Model Review anweisen, das Zeichen ausnahmsweise nicht als Sonderzeichen, sondern als normales Zeichen (Literal) zu interpretieren.

Ausdruck

Bedeutung

Findet

Findet nicht

[0-9]\+

Eine Ziffer, der ein Pluszeichen (+) folgt.

1+

2+

1

A

1+1

Was\?

Das Wort "Was", danach ein Fragezeichen

Was?

Was ist passiert?

Beginnt mit/Endet mit

Eine häufig vorkommende Aufgabe in Model Review ist die Verwendung bestimmter Werte, mit denen eine Zeichenkette beginnt oder endet. Diese Syntax ist eventuell ungewohnt für Benutzer, die mit regulären Ausdrücken, wie sie in Suchfunktionen vorkommen, vertraut sind. Die empfohlene Vorgehensweise besteht darin, am Anfang oder Ende des Ausdrucks ein ".*" oder ".+" zu setzen, um die Bedeutung "Beginnt mit" bzw. "Endet mit" zu erzielen.

Ausdruck

Bedeutung

Findet

Findet nicht

390-.*

Beginnt mit "390-" (endet mit beliebigen Zeichen einschließlich kein Zeichen).

390-1

390-111

1390-1

390-.+

Beginnt mit "390-" (endet mit beliebigen Zeichen, wobei jedoch mindestens ein Zeichen vorhanden sein muss).

390-1

390-111

1390-1

390-

.*-[a-z]

Endet mit "-" und einem Buchstaben (beginnt mit beliebigen Zeichen einschließlich kein Zeichen).

Änderung-A

Änd-A

-A

Änderung-A1

Änd-1

123

-1

.+-[a-z]

Endet mit einem Bindestrich (-) und einem Buchstaben (beginnt mit beliebigen Zeichen, wobei jedoch mindestens ein Zeichen vorhanden sein muss).

Änderung-A

Änd-A

Änderung-A1

Änd-1

123

-1

-A

Erstellen komplexer Ausdrücke

Reguläre Ausdrücke sind ein äußerst effizientes, aber auch komplexes Hilfsmittel bei der Suche nach Textstellen. Für komplexere Suchvorgänge müssen Sie eventuell mehrere Ausdrücke kombinieren.

Die folgende Tabelle zeigt einige Beispiele für solche komplexen Ausdrücke:

Ausdruck

Bedeutung

Findet

Findet nicht

[0-9]+[-]?[0-9]+

Zahlen, die einen Bindestrich in der Mitte haben können, aber nicht müssen

123-45

12345

12A32

1232-A

A

.*[^_]

Darf nicht mit einem Unterstrich (_) enden.

123324

TEIL1

12343_

(390|231)-[a-z0-9]+-[0-9]+

Entweder "390" oder "231", danach ein Bindestrich, ein aus mindestens einem Zeichen bestehender alphanumerischer Abschnitt, ein weiterer Bindestrich und schließlich mindestens eine Ziffer

390-meinteil-1

231-Befestigung-99

120-meinteil-1

380- -