Bingung Sama NOT di Regex? Begini Cara Simpelnya!
Regex (Regular Expression) sering kelihatan ribet, padahal kalau udah paham konsepnya, bakal jadi alat keren buat ngolah teks. Salah satu fitur penting yang sering dipakai adalah NOT, yang bisa dipakai buat cari karakter yang bukan bagian dari kelompok tertentu.
Apa Sih NOT di Regex?
Dalam Regex, NOT ditulis pakai [^...]
. Simbol ^
di dalam []
ini berarti cari karakter yang bukan bagian dari yang disebutkan.
Contoh:
[^abc]
Artinya: Ambil semua karakter kecuali a
, b
, atau c
.
Cara Pakai NOT di Berbagai Kasus
Ini dia beberapa contoh gimana NOT bisa dipakai buat filter karakter tertentu:
1. Cari yang Bukan Huruf (A-Z, a-z)
Kalau mau cari karakter yang bukan huruf, pakai ini:
[^A-Za-z]
Hasilnya: Nangkep semua karakter kecuali huruf.
Contoh di JavaScript:
const regex = /[^A-Za-z]/g;
console.log("Hello123!@#".match(regex));
// Output: [ '1', '2', '3', '!', '@', '#' ]
2. Cari yang Bukan Angka (0-9)
Pakai ini kalau mau cari bukan angka:
[^0-9]
Hasilnya: Nangkep semua karakter selain angka.
Contoh di JavaScript:
const regex = /[^0-9]/g;
console.log("Kode123".match(regex));
// Output: [ 'K', 'o', 'd', 'e' ]
3. Cari yang Bukan Spasi
Bisa juga cari semua karakter selain spasi pakai ini:
[^\s]
Hasilnya: Semua karakter kecuali spasi, tab, atau enter.
Contoh di JavaScript:
const regex = /[^\s]/g;
console.log("Halo Dunia!".match(regex).join(""));
// Output: HaloDunia!
4. Hilangkan Huruf, Angka, dan Spasi Sekaligus
Mau ambil cuma simbol dan karakter spesial? Pakai ini:
[^A-Za-z0-9\s]
Hasilnya: Ambil karakter selain huruf, angka, dan spasi.
Contoh di JavaScript:
const regex = /[^A-Za-z0-9\s]/g;
console.log("Hello World! 123 #JS".match(regex));
// Output: [ '!', '#' ]
Kesimpulan
Kalau udah ngerti konsep NOT di Regex, filtering karakter bakal lebih gampang. Nih rangkumannya:
[^A-Za-z]
→ Ambil semua yang bukan huruf[^0-9]
→ Ambil semua yang bukan angka[^\s]
→ Ambil semua yang bukan spasi[^A-Za-z0-9\s]
→ Ambil semua yang bukan huruf, angka, atau spasi
Regex ini kepake banget buat validasi input, bersihin data, dan olah teks! Coba aja sendiri biar makin paham.