Heim  >  Artikel  >  Datenbank  >  Beispielanalyse der Funktion regexp_like() in MySQL

Beispielanalyse der Funktion regexp_like() in MySQL

藏色散人
藏色散人Original
2019-04-15 11:52:4424235Durchsuche

In MySQL wird die Funktion REGEXP_LIKE() verwendet, um zu bestimmen, ob eine Zeichenfolge mit einem regulären Ausdruck übereinstimmt.

Die Funktion gibt 1 zurück, wenn die Zeichenfolge mit dem bereitgestellten regulären Ausdruck übereinstimmt, 0, wenn sie nicht übereinstimmt.

Syntax:

REGEXP_LIKE(expr, pat[, match_type])

wobei expr die Eingabezeichenfolge und pat der reguläre Ausdruck der Testzeichenfolge ist.

Mit dem optionalen Parameter match_type können Sie den regulären Ausdruck verfeinern.

Zum Beispiel können Sie match_type verwenden, um eine Übereinstimmung festzulegen, bei der die Groß-/Kleinschreibung beachtet wird oder nicht.

regexp_like() Beispiel 1 – grundlegende Verwendung

Das Folgende ist ein einfaches Beispiel:

SELECT REGEXP_LIKE('Cat', '.*') Result;

Ergebnis:

+--------+
| Result |
+--------+
|      1 |
+--------+

In diesem Fall gibt der reguläre Ausdruck ein beliebiges Zeichen in einer beliebigen Reihenfolge an, sodass wir natürlich eine Übereinstimmung erhalten. Die Funktion gibt 1 zurück, um eine Übereinstimmung anzuzeigen.

regexp_like() Beispiel 2 – keine Übereinstimmung

Hier ist ein Beispiel, bei dem die Eingabezeichenfolge nicht mit dem regulären Ausdruck übereinstimmt:

SELECT REGEXP_LIKE('Cat', 'b+') Result;

Ergebnis:

+--------+
| Result |
+--------+
|      0 |
+--------+

In diesem Fall gibt der reguläre Ausdruck an, dass in jeder Sequenz ein oder mehrere b-Zeichen vorhanden sein sollen. Unsere Eingabezeichenfolge enthält dieses Zeichen nicht, daher wird 0 zurückgegeben.

regexp_like() Beispiel 3 – Übereinstimmung mit dem Anfang einer Zeichenfolge

Das Folgende ist ein Beispiel für einen regulären Ausdruck, der angibt, dass eine Zeichenfolge mit bestimmten Zeichen beginnen muss:

SELECT REGEXP_LIKE('Cat', '^Ca') Result;

Ergebnis:

+--------+
| Result |
+--------+
|      1 |
+--------+

Was passiert, wenn es keine Übereinstimmung gibt:

SELECT REGEXP_LIKE('Cat', '^Da') Result;

Ergebnis:

+--------+
| Result |
+--------+
|      0 |
+--------+

regexp_like( ) Beispiel 4 – match_type-Parameter

Sie können zusätzliche Parameter angeben, um den Match-Typ zu bestimmen. Auf diese Weise können Sie angeben, ob bei der Übereinstimmung die Groß-/Kleinschreibung beachtet wird, ob Zeilenabschlüsse usw. enthalten sind.

Das Folgende ist ein Beispiel für die Angabe von Übereinstimmungen unter Berücksichtigung der Groß-/Kleinschreibung und von Übereinstimmungen ohne Berücksichtigung der Groß-/Kleinschreibung:

SELECT 
  REGEXP_LIKE('Cat', '^ca', 'c') 'Case-Sensitive',
  REGEXP_LIKE('Cat', '^ca', 'i') 'Case-Insensitive';

Ergebnis:

+----------------+------------------+
| Case-Sensitive | Case-Insensitive |
+----------------+------------------+
|              0 |                1 |
+----------------+------------------+

Der Parameter match_type kann die folgenden Zeichen enthalten :

c: Groß-/Kleinschreibung beachtender Abgleich.

i: stimmt unabhängig von der Groß-/Kleinschreibung überein.

m: Mehrzeilenmodus. Identifizieren Sie Zeilenabschlüsse in Zeichenfolgen. Das Standardverhalten besteht darin, Zeilenabschlusszeichen nur am Anfang und Ende eines Zeichenfolgenausdrucks zu finden.

n: Das Zeichen . entspricht dem Zeilenabschlusszeichen. Die Standardeinstellung ist . passend, um am Ende der Zeile anzuhalten.

u: Nur Unix-Zeilenenden. Nur Zeilenumbruchzeichen werden von den Übereinstimmungsoperatoren ., ^ und $ als Zeilenabschlusszeichen erkannt.

Verwandte Empfehlungen: „MySQL-Tutorial

Das obige ist der detaillierte Inhalt vonBeispielanalyse der Funktion regexp_like() in MySQL. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn