Freigeben über


Suchen von Text mit regulären Ausdrücken

Reguläre Ausdrücke sind eine präzise und flexible Notation zum Suchen und Ersetzen von Textmustern. Eine bestimmte Gruppe regulärer Ausdrücke kann im Suchen-Feld des Dialogfelds "Suchen und Ersetzen" von SQL Server Management Studio verwendet werden.

So verwenden Sie reguläre Ausdrücke zur Suche

  1. Wenn Sie die Verwendung regulärer Ausdrücke im Feld "Suchen nach" während der QuickFind-, Find in Files-, Quick Replace- oder Replace in Files-Operationen aktivieren möchten, wählen Sie die Option "Verwenden" unter "Suchoptionen" und dann "Reguläre Ausdrücke" aus.

  2. Die dreieckige Verweisliste-Schaltfläche neben dem Feld 'Suchen nach' wird dann verfügbar. Klicken Sie auf diese Schaltfläche, um eine Liste der am häufigsten verwendeten regulären Ausdrücke anzuzeigen. Wenn Sie ein Element aus dem Ausdrucks-Generator auswählen, wird es in die Zeichenfolge "Suchen" eingefügt.

Hinweis

Es gibt Syntaxunterschiede zwischen den regulären Ausdrücken, die in Find what-Zeichenfolgen verwendet werden können, und denen, die im Microsoft .NET Framework-Programm gültig sind. Beispielsweise wird in "Suchen und Ersetzen" die Notation {} der geschweiften Klammern für markierte Ausdrücke verwendet. Der Ausdruck "zo{1}" entspricht also allen Vorkommen von "zo" gefolgt vom Tag 1, wie in "Alonzo1" und "Gonzo1". Innerhalb von .NET Framework wird die Notation {} jedoch für Quantifizierer verwendet. Der Ausdruck "zo{1}" entspricht also allen Vorkommen von "z", gefolgt von genau einem "o", wie in "Zone", aber nicht "zoo".

In der folgenden Tabelle werden die regulären Ausdrücke beschrieben, die in der Referenzliste verfügbar sind.

Ausdruck Syntax BESCHREIBUNG
Beliebiges Zeichen . Entspricht jedem einzelnen Zeichen mit Ausnahme eines Zeilenumbruchs.
0 oder mehr * Gleicht null oder mehr Vorkommen des vorherigen Ausdrucks ab, sodass alle möglichen Übereinstimmungen möglich sind.
Ein oder mehr + Entspricht mindestens einem Vorkommen des vorherigen Ausdrucks.
Zeilenanfang ^ Verankert die Übereinstimmungszeichenfolge am Anfang einer Zeile.
Zeilenende $ Verankert die Matchzeichenkette am Ende einer Zeile.
Wortanfang < Nur dann gibt es Übereinstimmungen, wenn an dieser Stelle im Text ein Wort beginnt.
Wortende > Übereinstimmungen nur, wenn ein Wort an diesem Punkt im Text endet.
Zeilenumbruch \n Entspricht einem plattformunabhängigen Zeilenumbruch. Fügt in einem Replace-Ausdruck einen Zeilenumbruch ein.
Ein beliebiges Zeichen im Satz [] Entspricht einem der Zeichen innerhalb der []. Um einen Zeichenbereich anzugeben, listen Sie das Anfangs- und Endzeichen auf, das durch einen Gedankenstrich (-) getrennt ist, wie in [a-z].
Ein beliebiges Zeichen, das nicht im Satz enthalten ist [^...] Entspricht jedem Zeichen, das nicht in der Menge von Zeichen nach dem ^ enthalten ist.
Oder | Entspricht entweder dem Ausdruck vor oder nach dem ODER-Symbol (|). Wird meist in einer Gruppe verwendet. Beispielsweise entspricht (Schwamm-|Schlamm-)bad "Schwammbad" und "Schlammbad".
Flucht |Entspricht dem Zeichen, das dem umgekehrten Schrägstrich (\) als Literal folgt. Auf diese Weise können Sie die zeichen, die in der Schreibweise regulärer Ausdrücke verwendet werden, z. B. {und ^, finden. \^ sucht z. B. nach dem ^-Zeichen.
Markierter Ausdruck {} Entspricht dem Text, der mit dem eingeschlossenen Ausdruck markiert ist.
C/C++-Bezeichner :Ich Entspricht dem Ausdruck ([a-zA-Z_$][a-zA-Z0-9_$]*).
Zeichenfolge in Anführungszeichen :q Entspricht dem Ausdruck (("[^"]*")|(' [^']*')).
Leerzeichen oder Tabstopp :b Entspricht Leerzeichen oder Tabstoppzeichen.
Ganze Zahl :z Entspricht dem Ausdruck ([0-9]+).

Die Liste aller regulären Ausdrücke, die in Find- und Replace-Vorgängen gültig sind, ist länger als in der Referenzliste angezeigt werden kann. Sie können auch einen der folgenden regulären Ausdrücke in eine Suchzeichenfolge einfügen:

Ausdruck Syntax BESCHREIBUNG
Minimal - Null oder mehr @ Gleicht null oder mehr Vorkommen des vorherigen Ausdrucks ab, wobei so wenig Zeichen wie möglich erfasst werden.
Minimal - eine oder mehr # Gleicht mindestens ein Vorkommen des vorherigen Ausdrucks ab, wobei möglichst wenige Zeichen übereinstimmen.
n Mal wiederholen ^n Gleicht n Vorkommen des vorherigen Ausdrucks ab. [0-9]^4 entspricht beispielsweise einer beliebigen vierstelligen Sequenz.
Gruppierung () Gruppiert einen Unterausdruck.
n-te markierte Text \n Gibt in einem Suchen oder Ersetzen-Ausdruck den Text an, der dem n-ten markierten Ausdruck entspricht, wobei n eine Zahl zwischen 1 und 9 ist.

In einem Replace-Ausdruck fügt \0 den gesamten übereinstimmenen Text ein.
Rechtsjustiertes Feld \(w,n) In einem Replace-Ausdruck wird der n-te markierte Ausdruck in einem Feld mit einer Breite von mindestens w Zeichen rechtsbündig ausgerichtet.
linksgerechtfertigtes Feld \(-w,n) In einem Replace-Ausdruck wird der n-te markierte Ausdruck linksjustiert in einem Feld mit einer Breite von mindestens w Zeichen.
Übereinstimmung verhindern ~(X) Verhindert eine Übereinstimmung, wenn X an diesem Punkt im Ausdruck angezeigt wird. Beispielsweise entspricht real~(ity) dem "real" in den englischen Wörtern "realty" und "really," aber nicht dem "real" in "reality."
Alphanumerisches Zeichen : Entspricht dem Ausdruck ([a-zA-Z0-9]).
Alphabetisches Zeichen :c Entspricht dem Ausdruck ([a-zA-Z]).
Dezimalziffer :d Entspricht dem Ausdruck ([0-9]).
Hexadezimalzahl :h Entspricht dem Ausdruck ([0-9a-fA-F]+).
Rationale Zahl :n Entspricht dem Ausdruck (([0-9]+.[ 0-9]*)|([0-9]*. [0-9]+)|([0-9]+)).
Buchstabenkette :w Entspricht dem Ausdruck ([a-zA-Z]+).
Flucht \e Unicode U+001B.
Glocke \g. Unicode U+0007.
Rücktaste \h Unicode U+0008.
Registerkarte \t Entspricht einem Tabulatorzeichen, Unicode U+0009.
Unicode-Zeichen \x#### oder \u#### Entspricht einem durch Unicode-Wert angegebenen Zeichen, wobei #### hexadezimale Ziffern ist. Sie können ein Zeichen außerhalb der mehrsprachigen Basisebene (d. h. ein Ersatz) mit dem ISO 10646-Codepunkt oder mit zwei Unicode-Codepunkten angeben, die die Werte des Ersatzpaars angeben.

In der folgenden Tabelle sind die Syntax für den Abgleich nach standardmäßigen Unicode-Zeicheneigenschaften aufgeführt. Die Abkürzung mit zwei Buchstaben ist identisch mit der in der Unicode-Zeicheneigenschaftendatenbank aufgeführten. Diese können als Teil eines Zeichensatzes angegeben werden. Beispielsweise entspricht der Ausdruck [:Nd:Nl:No] jeder Art von Ziffer.

Ausdruck Syntax BESCHREIBUNG
Großbuchstabe :Lu Passt zu einem beliebigen Großbuchstaben. Beispielsweise passt :Luhe zu "The", jedoch nicht zu "the".
Kleinbuchstabe :Ll Entspricht einem kleingeschriebenen Buchstaben. Beispielsweise stimmt "Llhe" mit "the" überein, aber nicht mit "The".
Titelkasus-Buchstabe :Lt Entspricht Zeichen, die einen Großbuchstaben mit einem Kleinbuchstaben kombinieren, z. B. Nj und Dz.
Modifikator-Buchstabe :Lm Entspricht Buchstaben oder Satzzeichen, z. B. Kommas, Kreuzakzente und doppelter Primierung, die verwendet werden, um Änderungen am vorherigen Buchstaben anzugeben.
Anderer Buchstabe :Lo Entspricht anderen Buchstaben, z. B. gotischen Buchstaben ahsa.
Dezimalziffer :Nd Entspricht dezimalen Ziffern, wie 0–9, und deren Vollbreiten-Entsprechungen.
Buchstabe Ziffer :Nl Gleicht Buchstabenziffern wie römische Ziffern und ideografische Zahl 0 ab.
Andere Ziffer :Nein Entspricht anderen Ziffern, z. B. der alten Kursivzahl 1.
Interpunktion öffnen :PS Gleicht öffnende Satzzeichen wie runde und geschweifte Klammern ab.
Enge Satzzeichen :Pe Gleicht schließende Interpunktion ab, z. B. schließende Klammern und geschweifte Klammern.
Initiale Anführungszeichenzeichen :Pi Gleicht die anfänglichen doppelten Anführungszeichen ab.
Abschließende Satzzeichen bei Anführungszeichen :Pf Passt zu einfachen Anführungszeichen und endenden doppelten Anführungszeichen.
Gedankenstrichzeichen :Pd Entspricht dem Strichzeichen.
Zeichensetzung bei Bindewörtern :PC Entspricht dem Unterstrich oder der Unterstreichungsmarke.
Andere Interpunktion :Po Übereinstimmungen (,), ?, ", !, @, #, %, &, *, \, (:), (;), ' und /).
Leerzeichen-Trennzeichen :Zs Entspricht Leerzeichen.
Zeilentrennzeichen :Zl Entspricht dem Unicode-Zeichen U+2028.
Absatztrennzeichen :Zp Entspricht dem Unicode-Zeichen U+2029.
Nicht-Abstandszeichen :Mn Entspricht Nicht-Abstandszeichen.
Kombinieren von Markierungen :Mc Gleicht die Kombination von Markierungen ab.
Umschließende Markierung :Ich Entspricht eingeschlossenen Markierungen.
Mathematisches Symbol :Sm Entspricht +, =, ~, |, <und >.
Währungssymbol :Sc Entspricht $- und anderen Währungssymbolen.
Modifizierersymbol :Sk Entspricht Modifizierersymbolen wie Zirkumflexakzent, Gravisakzent und Makro.
Anderes Symbol :Also Entspricht anderen Symbolen, z. B. dem Copyrightzeichen, dem Pilcrow-Zeichen und dem Gradzeichen.
Anderes Steuerelement :Cc Entspricht dem Ende der Zeile.
Anderes Format :Vgl Formatierungssteuerzeichen wie die bidirektionalen Steuerzeichen.
Ersatz :Cs Entspricht einer Hälfte eines Surrogatpaars.
Andere private Nutzung :Co Entspricht einem beliebigen Zeichen aus dem Bereich für private Nutzung.
Andere nicht zugewiesen :Cn Entspricht Zeichen, die keinem Unicode-Zeichen zugeordnet sind.

Zusätzlich zu den standardmäßigen Unicode-Zeicheneigenschaften können die folgenden zusätzlichen Eigenschaften als Teil eines Zeichensatzes angegeben werden.

Ausdruck Syntax BESCHREIBUNG
Alpha :Al Entspricht einem beliebigen einzelnen Zeichen. Beispielsweise entspricht :Alhe Wörtern wie „The“, „then“ und „erreicht“.
Numerisch :Nu Entspricht einer beliebigen Zahl oder Ziffer.
Interpunktion :Pu Entspricht einem beliebigen Satzzeichen, z. B. ?, @, ' und so weiter.
Leerzeichen :Wh Entspricht allen Arten von Leerzeichen, einschließlich typografischer und ideografischer Leerzeichen.
Bidi :Bi Entspricht Zeichen aus Rechts-nach-links-Skripts wie Arabisch und Hebräisch.
Hangul :Ha Entspricht koreanischen Hangul und kombiniert Jamos.
Hiragana :Hallo Entspricht Hiragana-Zeichen.
Katakana :Ka Entspricht Katakana-Zeichen.
Ideographisch/Han/Kanji :ID Gleicht ideografische Zeichen wie Han und Kanji ab.

Siehe auch

Suchen und Ersetzen
Suchtext mit Wildcards