Hier ist ein Beispiel für die Rückgabe von Zeilen, die alphanumerische Zeichen in SQLite enthalten.
Alphanumerische Zeichen sind alphabetische Zeichen und numerische Zeichen.
Beispiel
Angenommen, wir haben eine Tabelle mit den folgenden Daten:
SELECT c1 FROM t1;
Ergebnis:
Music Live Music Café Café Del Mar 100 Cafés [email protected] 1 + 1 () [email protected]#&()–[{}]:;',?/* `~$^+=<>“ $1.50 Player 456 007 null é É é 123 ø ø 123
Wir können den REGEXP
verwenden Operator mit einem regulären Ausdruck, um nur die Zeilen zurückzugeben, die nur alphanumerische Zeichen enthalten:
SELECT c1 FROM t1
WHERE c1 REGEXP '^[A-Za-z0-9]+$';
Ergebnis:
Music 007
In diesem Fall habe ich keine Unicode-Zeichen wie é
eingefügt , É
, oder ø
in meinem Bereich, und daher werden alle Zeilen, die diese Zeichen enthalten, von der Ausgabe ausgeschlossen.
Sie müssen sicherstellen, dass Sie dabei die relevanten Zeichen abdecken.
Hier ist ein Beispiel für die Erweiterung des Bereichs um diese Zeichen:
SELECT c1 FROM t1
WHERE c1 REGEXP '^[A-Za-zÀ-Þß-ÿ0-9]+$';
Ergebnis:
Music Café 007 é É ø
Das Leerzeichen ist nicht alphanumerisch. Um Zeilen zurückzugeben, die Leerzeichen enthalten, können wir daher unserem regulären Ausdruck ein Leerzeichen hinzufügen:
SELECT c1 FROM t1
WHERE c1 REGEXP '^[A-Za-zÀ-Þß-ÿ0-9 ]+$';
Ergebnis:
Music Live Music Café Café Del Mar 100 Cafés Player 456 007 é É é 123 ø ø 123
Wir können den folgenden Code verwenden, um alle Zeilen einzuschließen, die enthalten Zeichen aus unserem Bereich (auch wenn sie auch Zeichen außerhalb dieses Bereichs enthalten):
SELECT c1 FROM t1
WHERE c1 REGEXP '[A-Za-zÀ-Þß-ÿ0-9]';
Ergebnis:
Music Live Music Café Café Del Mar 100 Cafés [email protected] 1 + 1 $1.50 Player 456 007 é É é 123 ø ø 123