Arbeiten mit regulären Ausdrücken in Affinity-Apps

Affinity-Apps unterstützen reguläre Ausdrücke bei der Suche nach Dokumentinhalten, die bestimmten Mustern entsprechen.

Reguläre Ausdrücke lassen sich in Affinity-Apps an verschiedenen Stellen einsetzen:

Wenn Sie mit regulären Ausdrücken arbeiten, müssen Sie eine spezielle Syntax einhalten, um das Suchmuster für den Text zu definieren. Die folgenden Beispiele und Ausdrücke zeigen ein paar gängige Syntaxvarianten, die Sie wahrscheinlich auch für Ihre regulären Ausdrücke verwenden können.

Eine vollständige Anleitung zu allen Möglichkeiten der regulären Ausdrücke würde jedoch den Rahmen dieser Affinity-Hilfe sprengen. Weitere Infos finden Sie online, wie etwa auf www.regular-expressions.info und regexone.com.

Groß-/Kleinschreibung

Wenn ein Ausdruck nach Buchstaben sucht, unterscheidet das Panel "Status" immer zwischen Groß- und Kleinschreibung – außer Sie legen es ganz explizit anders fest. Im Panel "Suchen und Ersetzen" wird nur nach Groß- und Kleinbuchstaben unterschieden, wenn Sie die Formatierungsoption Groß-/Kleinschreibung beachten für das Feld Suchen aktivieren.

In jedem Panel lässt sich die Unterscheidung zwischen Groß- und Kleinbuchstaben sowohl für einen gesamten Ausdruck als auch nur für einzelne Teile aushebeln:

Beispiele für reguläre Ausdrücke

Ebenennamen, die eins von zwei Wörtern enthalten gefolgt von einem bestimmten Wort

In einem Dokument aus Affinity Photo haben wir mit den Retuschierwerkzeugen Staub und Schönheitsfehler eines Fotos entfernt, indem wir Ebenen darüber gelegt und dann übermalt haben.

Diese Ebenen tragen daher die Namen Staub entfernen und Schönheitsfehler entfernen.

Im Panel "Status" können wir nun eine Abfrage erstellen, die Ebenennamen mit dem regulären Ausdruck (?i)(Staub/Schönheitsfehler) entfernen abgleicht – also Treffer sucht, die entweder Staub oder Schönheitsfehler enthalten gefolgt von einem Leerzeichen und dann "entfernen". Die Groß-/Kleinschreibung wird in diesem Beispiel für den gesamten Ausdruck ignoriert.

Ebenennamen mit zwei Wörtern an beliebiger Position und in beliebiger Reihenfolge

In einem Dokument aus Affinity Designer haben wir den Ebenennamen Versatz, Füllung für Ebenen verwendet, die manuell verschoben wurden, um einen Fehler in der Druckausgabe zu simulieren.

An einigen Stellen haben wir diese Wörter vielleicht auch in umgekehrter Reihenfolge eingegeben.

Im Panel "Status" können wir nun eine Abfrage festlegen, um mit dem regulären Ausdruck (?i)(?=.*Versatz)(?=.*Füllung).*$ nach den entsprechenden Ebenen zu suchen. Diese Abfrage findet Ebenennamen, die beide Wörter enthalten – es spielt hierbei keine Rolle, wo die Wörter innerhalb des Namens stehen. Die Groß-/Kleinschreibung wird in diesem Beispiel für den gesamten Ausdruck ignoriert.

Ebenennamen, die einer bestimmten Konvention folgen

In einem Dokument aus Affinity Designer für ein CAD-Architekturdesign bestehen die Ebenennamen für die Baugruppen aus einem Präfix mit zwei Buchstaben gefolgt von mindestens einer Komponente, die aus Unterstrich und einigen Ziffern besteht. Zum Beispiel: Bg-35_10_15.

Im Panel "Status" können wir die Sichtbarkeit der Ebenen für eine bestimmte Baugruppenkategorie mit einem regulären Ausdruck wie [Bg][Bg](_[0-9]{1,})+ steuern. Dieser Ausdruck funktioniert auch, wenn sich ein Tippfehler in die Groß-/Kleinschreibung des Präfix einschleicht.

Umgekehrt können wir auch die Sichtbarkeit aller anderen Komponentenkategorien mit einer kleinen Änderung im Ausdruck steuern. Hierzu verwenden wir (^[Bg][Bg])(_[0-9]{1,})+.

Instanzen eines Worts in einem Dokumenttext mit Ausnahme der Stellen, an denen das Wort hinter einem ganz bestimmten Wort steht.

In einem Dokument aus Affinity Publisher wollen wir nach Instanzen eines Worts im gesamten Text suchen, aber die Instanzen überspringen, an denen es auf ein ganz bestimmtes Wort folgt.

Im Panel "Suchen und Ersetzen" aktivieren wir zunächst für das Feld Suchen unter Formatierung die Option Regulärer Ausdruck und verwenden dann den Ausdruck (?>!proin )aliquam. Die Ergebnisse umfassen nun alle Instanzen von aliquam – mit Ausnahme der Instanzen, an denen es hinter proin und einem Leerzeichen steht.

Sie können auch Instanzen ausschließen, bei denen eins von mehreren vorangehenden Wörtern steht. Möchten Sie zum Beispiel alle Instanzen ausschließen, bei denen vor dem Wort Fehler der Artikel "der" oder "ein" steht, verwenden Sie den Ausdruck (?>!(der|ein) )Fehler.

SIEHE AUCH: