DISKON TERBATAS! Masukkan kupon "skillbaru" saat checkout di kelas apa saja
Skodev
Belajar coding dalam bahasa Indonesia
Belajar penggunaan regular expression dalam PHP untuk pencocokan pola dan manipulasi teks dengan penjelasan yang sederhana dan contoh yang mudah diikuti.
Regular expression atau regex adalah sekumpulan karakter yang membentuk sebuah pola pencarian. Dalam PHP, kamu bisa menggunakan regex untuk berbagai keperluan seperti validasi form, pencarian dan penggantian teks, atau pemisahan string berdasarkan pola tertentu.
Dalam PHP, fungsi yang sering digunakan untuk bekerja dengan regex adalah preg_match()
, preg_match_all()
, preg_replace()
, preg_split()
, dan preg_grep()
.
Untuk mengecek apakah sebuah string memenuhi pola tertentu, kamu dapat menggunakan preg_match()
.
$pattern = "/kucing/";
$text = "Saya memiliki kucing kecil";
if (preg_match($pattern, $text)) {
echo "Pola ditemukan!";
} else {
echo "Pola tidak ditemukan";
}
Jika ingin menemukan semua kemunculan yang sesuai dengan pola, gunakan preg_match_all()
.
$pattern = "/kucing/";
$text = "Saya memiliki kucing kecil, kucing tersebut sangat lucu";
preg_match_all($pattern, $text, $matches);
print_r($matches);
Mengganti teks berdasarkan pola dilakukan dengan preg_replace()
.
$pattern = "/buruk/";
$replacement = "baik";
$text = "Sikapnya buruk";
$updatedText = preg_replace($pattern, $replacement, $text);
echo $updatedText; // Sikapnya baik
Untuk memisahkan string dengan pola tertentu sebagai pemisah, kamu bisa menggunakan preg_split()
.
$pattern = "/[\s,]+/";
$text = "satu, dua, tiga, empat";
$parts = preg_split($pattern, $text);
print_r($parts); // Array ( [0] => satu [1] => dua [2] => tiga [3] => empat )
Untuk memfilter elemen-elemen dalam array berdasarkan pola regex, gunakan preg_grep()
.
$pattern = "/^kucing/";
$array = ["kucing anggora", "anjing herder", "kucing persia"];
$filtered = preg_grep($pattern, $array);
print_r($filtered); // Array ( [0] => kucing anggora [2] => kucing persia )
Modifiers adalah karakter tambahan di akhir pola regex yang mengubah cara pencarian dilakukan. Beberapa modifier umum adalah:
i
- Case insensitive (case tidak berpengaruh)m
- Multiline (pencarian dilakukan pada setiap baris)u
- UTF-8 (pencarian dilakukan pada teks dengan encoding UTF-8)Contoh:
$pattern = "/kucing/i";
$text = "Saya memiliki KuCinG kecil";
if (preg_match($pattern, $text)) {
echo "Pola ditemukan dengan modifier i!";
}
Ada beberapa karakter istimewa dalam regex yang memiliki fungsi tertentu, seperti:
.
(titik) - Mewakili karakter apapun kecuali baris baru*
- Karakter sebelumnya muncul nol atau lebih kali+
- Karakter sebelumnya muncul satu atau lebih kali?
- Karakter sebelumnya muncul nol atau satu kali[]
- Menyatakan set karakter()
- Digunakan untuk pengelompokkan{}
- Menyatakan jumlah spesifik kemunculan\
- Escape character, digunakan sebelum karakter istimewa untuk menunjukkan karakter tersebut digunakan sebagai literalContoh karakter spesial dalam penggunaan:
$pattern = "/kuc.*/";
$text = "kuc adalah bagian dari kata kucing";
if (preg_match($pattern, $text)) {
echo "Pola 'kuc.*' ditemukan!";
}
Melalui artikel ini, kamu sudah mendapatkan gambaran dasar tentang bagaimana regular expression bekerja dalam PHP. Eksperimen dengan berbagai fungsi dan pola untuk memahami lebih lanjut kemampuan dan kegunaan dari regular expression dalam pemrograman PHP.