MySQL unterstützt eine weitere Mustervergleichsoperation, die auf regulären Ausdrücken und dem REGEXP-Operator basiert. Nachfolgend finden Sie eine Tabelle mit Mustern, die mit dem REGEXP-Operator für den Mustervergleich verwendet werden können.
Muster |
Was passt zum Muster? $ Ende der Zeichenfolge |
Jede einzelne Charakter | [...] |
Jedes in eckigen Klammern aufgeführte Zeichen p> | [^...] |
Nicht in eckigen Klammern aufgeführt Jedes Zeichen | p1|p2|p3 |
abwechselnd; entspricht jedem Muster p1, p2 oder p3 | * |
null oder mehr Instanzen des vorhergehenden Elements | + |
Eine oder mehrere Instanzen des vorherigen Elements | .{n} |
n Instanzen des vorherigen Elements | {m,n} |
Beispiel | Um die Verwendung von REGEXP zu veranschaulichen, verwenden wir die Tabelle „ „Student_info“ mit den folgenden Daten –mysql> Select * from Student_info; +------+---------+------------+------------+ | id | Name | Address | Subject | +------+---------+------------+------------+ | 101 | YashPal | Amritsar | History | | 105 | Gaurav | Chandigarh | Literature | | 130 | Ram | Jhansi | Computers | | 132 | Shyam | Chandigarh | Economics | | 133 | Mohan | Delhi | Computers | +------+---------+------------+------------+ 5 rows in set (0.00 sec) | Hier sind nun einige Abfragen, um das „Name“-Muster aus der obigen Tabelle mit REGEXP zu finden –
mysql> Select name from student_info WHERE Name REGEXP 'am$'; +-------+ | name | +-------+ | Ram | | Shyam | +-------+ 2 rows in set (0.00 sec) | Mit der obigen Abfrage werden alle Namen gefunden, die mit „am“ enden. mysql> Select name from student_info WHERE Name REGEXP 'av'; +--------+ | name | +--------+ | Gaurav | +--------+ 1 row in set (0.00 sec) | Die obige Abfrage findet alle Namen, die „av“ enthalten.
Das obige ist der detaillierte Inhalt vonWas ist der MySQL-Operator REGEXP und wie handhabt er den Mustervergleich?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!