Gibt true zurück, wenn die Zeichenfolge mit dem regulären Ausdruck übereinstimmt. Diese Funktion ähnelt dem LIKE-Prädikat, verwendet jedoch reguläre Ausdrücke anstelle des einfachen Platzhalterzeichenabgleichs.
Syntax
REGEXP_LIKE( string, Muster )
Parameter
string |
Die |
||||||||||||
pattern |
Ein String, der den regulären Ausdruck enthält, der mit dem String übereinstimmt. Die Syntax des regulären Ausdrucks ist mit der Perl 5-Syntax für reguläre Ausdrücke kompatibel. Weitere Informationen finden Sie in der Dokumentation zu regulären Ausdrücken von Perl. |
||||||||||||
modifiers |
Ein oder mehrere Flags mit einem Zeichen, die ändern, wie der reguläre Ausdruck Übereinstimmungen in der Zeichenfolge findet:
|
Hinweise
Diese Funktion arbeitet mit UTF-8-Zeichenfolgen unter Verwendung des Standardgebietsschemas, auch wenn das Gebietsschema auf etwas anderes festgelegt wurde.
Wenn Sie eine Abfrage mit regulären Ausdrücken aus einer Oracle-Datenbank portieren, denken Sie daran, dass Oracle eine Zeichenfolge mit der Länge Null als äquivalent zu NULL ansieht, Vertica jedoch nicht.
Examples
Dieses Beispiel erstellt eine Tabelle mit mehreren Zeichenfolgen, um reguläre Ausdrücke zu demonstrieren.
Wählen Sie alle Datensätze in der Tabelle aus, die den Buchstaben „a“ enthalten.
=> WÄHLEN SIE v AUS t WHERE REGEXP_LIKE(v,'a'); v ------ Aaa aaa abc abc1(4 Zeilen)
Wählen Sie alle Zeilen in der Tabelle aus, die mit dem Buchstaben „a“ beginnen.“
=> WÄHLEN SIE v AUS t WHERE REGEXP_LIKE(v,'^a'); v ------ aaa abc abc1(3 Zeilen)
Wählen Sie alle Zeilen aus, die den Teilstring „aa.“
=> WÄHLEN SIE v AUS t WHERE REGEXP_LIKE(v,'aa'); v ----- Aaa aaa(2 Zeilen)
Wählen Sie alle Zeilen aus, die eine Ziffer enthalten.
=> WÄHLEN SIE v AUS t WHERE REGEXP_LIKE(v,'\d'); v ------ 123 abc1(2 Zeilen)
Wählen Sie alle Zeilen aus, die den Teilstring „aaa“ enthalten.“
=> WÄHLEN SIE v AUS t WHERE REGEXP_LIKE(v,'aaa'); v ----- aaa(1 Zeile)
Wählen Sie alle Zeilen aus, die die Teilzeichenfolge „aaa“ enthalten, wobei die Groß- und Kleinschreibung nicht berücksichtigt wird.
=> WÄHLEN SIE v AUS t WHERE REGEXP_LIKE(v,'aaa', 'i'); v ----- Aaa aaa(2 Zeilen)
Wählen Sie Zeilen aus, die die Teilzeichenfolge „abc“ enthalten.
=> WÄHLEN SIE v AUS t WOBEI REGEXP_LIKE(v,'abc'); v ---(0 Zeilen)
Wählen Sie Zeilen aus, die die Teilzeichenfolge „a b c“ enthalten, wobei Leerzeichen innerhalb des regulären Ausdrucks ignoriert werden.
=> SELECT v FROM t WHERE REGEXP_LIKE(v,'a b c','x'); v ------ abc abc1(2 Zeilen)
Fügen Sie mehrzeilige Zeilen hinzu, um sie mit dem Modifikator „m“ zu demonstrieren.
Wählen Sie Zeilen aus, die mit der Teilzeichenfolge „Record“ beginnen und mit der Teilzeichenfolge „line 2″ enden.“
=> WÄHLEN SIE v aus t WOBEI REGEXP_LIKE(v,'^).*zeile 2$'); v ---(0 Zeilen)
Wählen Sie Zeilen aus, die mit der Teilzeichenfolge „Record“ beginnen und mit der Teilzeichenfolge „line 2“ enden, wobei mehrere Zeilen als separate Zeichenfolgen behandelt werden.