Berikut adalah contoh mengembalikan baris yang hanya berisi karakter non-alfanumerik di SQLite.
Karakter non-alfanumerik mencakup karakter tanda baca seperti example@sqldat.com#&()–[{}]:;',?/* dan simbol seperti `~$^+=<>“ , serta karakter spasi putih seperti karakter spasi atau tab.
Contoh Data
Kami akan menggunakan data berikut untuk contoh kami:
SELECT c1 FROM t1; Hasil:
+----------------------+
| c1 |
+----------------------+
| Music |
| Live Music |
| Café |
| Café Del Mar |
| 100 Cafés |
| example@sqldat.com |
| 1 + 1 |
| () |
| example@sqldat.com#&()–[{}]:;',?/* |
| `~$^+=<>“ |
| $1.50 |
| Player 456 |
| 007 |
| NULL |
| |
| é |
| É |
| é 123 |
| ø |
| ø 123 |
+----------------------+
Kita dapat menggunakan REGEXP operator dengan ekspresi reguler untuk mengembalikan baris yang hanya berisi karakter non-alfanumerik:
SELECT c1 FROM t1
WHERE c1 NOT REGEXP '[A-Za-z0-9]'; Hasil:
+----------------------+
| c1 |
+----------------------+
| () |
| example@sqldat.com#&()–[{}]:;',?/* |
| `~$^+=<>“ |
| |
| é |
| É |
| ø |
+----------------------+
Dalam hal ini, rentang pengecualian saya tidak mencakup karakter alfanumerik seperti é , É , dan ø . Contoh berikut memperluas jangkauan untuk mengecualikan karakter tersebut dari hasil:
SELECT c1 FROM t1
WHERE c1 NOT REGEXP '[A-Za-zÀ-Þß-ÿ0-9]'; Hasil:
()
example@sqldat.com#&()–[{}]:;',?/*
`~$^+=<>“
Tabel kami juga berisi baris dengan string kosong. Ini adalah karakter non-alfanumerik, sehingga dikembalikan dalam hasil di atas. Kita juga dapat menggunakan NULLIF() fungsi untuk mengecualikan string kosong dari output:
SELECT c1 FROM t1
WHERE NULLIF(c1, '') NOT REGEXP '[A-Za-zÀ-Þß-ÿ0-9]'; Hasil:
()
example@sqldat.com#&()–[{}]:;',?/*
`~$^+=<>“