Sering sekali kita berhubungan dengan input atau data yang berhubungan dengan teks dan berkepentingan untuk mengambil sebagian dari teks tersebut berdasarkan suatu pola. Bagaimana kita melakukan hal tersebut ? Salah satu cara paling efisien adalah dengan menggunakan fungsi preg_match() seperti yang akan saya jelaskan di bawah ini.
Fungsi preg_match()
Fungsi preg_match() adalah fungsi yang digunakkan untuk mencari suatu pola di dalam subjek teks ktia dengan menggunakan regular expression.
Sintaks dasarnya adalah sebagai berikut:
int preg_match ( string pattern, string subject [, array &matches [, int flags [, int offset]]] )
tapi untuk penyederhanaan maka sintaks berikut adalah yang akan kita gunakan :
int preg_match ( string pattern, string subject [, array &matches] )
Dimana :
Fungsi preg_match()
Fungsi preg_match() adalah fungsi yang digunakkan untuk mencari suatu pola di dalam subjek teks ktia dengan menggunakan regular expression.
Sintaks dasarnya adalah sebagai berikut:
int preg_match ( string pattern, string subject [, array &matches [, int flags [, int offset]]] )
tapi untuk penyederhanaan maka sintaks berikut adalah yang akan kita gunakan :
int preg_match ( string pattern, string subject [, array &matches] )
Dimana :
- pattern adalah definisi pola dalam regex yang ingin kita cocokkan dengan subjek kita
- subject adalah subjek teks yang akan kita cocokkan
- matches adalah array tempat menyimpan hasil pencocokan teks dengan pola regex yang telah kita definisikan. Ini adalah parameter optional (boleh ada atau tidak).
Contoh Kasus
Misalkan kita memiliki suatu urutan teks sebagai berikut :
Nama=PHP;Website=http://www.komputasiawan.com;Komentar=Belajar Regex itu sangat berguna, terutama untuk pengolahan teks;Topik=Pengolahan Teks;
Dari untaian teks tersebut saya ingin mengambil url website yang terdapat di dalamnya, yaitu http://www.komputasiawan.com. Bagaimana caranya ?
Pertama kita tentukan pola regex yang pas untuk mengambil nilai dari entri Website, yaitu :
Website=(.+?);
Setelah itu kita masukkan sebagai parameter pertama fungsi preg_match() dengan diapit beberapa karakter khusus sebagai pengapit pola regex (/,@, &, dsbnya).
Contoh code-nya adalah sebagai berikut :
Dan berikut adalah hasil yang didapatkan :
Sederhana bukan ?
Penutup
Penggunaan pola regular expression (regex) di PHP dengan menggunakan fungsi preg_match() sangat berguna untuk mengolah teks sederhana sampai dengan yang kompleks. Hal yang perlu kita kuasai adalah pengetahuan mengenai regex itu sendiri.
Demikian artikel ini dibuat, semoga dapat berguna. Nantikan artikel selanjutnya.
Misalkan kita memiliki suatu urutan teks sebagai berikut :
Nama=PHP;Website=http://www.komputasiawan.com;Komentar=Belajar Regex itu sangat berguna, terutama untuk pengolahan teks;Topik=Pengolahan Teks;
Dari untaian teks tersebut saya ingin mengambil url website yang terdapat di dalamnya, yaitu http://www.komputasiawan.com. Bagaimana caranya ?
Pertama kita tentukan pola regex yang pas untuk mengambil nilai dari entri Website, yaitu :
Website=(.+?);
Setelah itu kita masukkan sebagai parameter pertama fungsi preg_match() dengan diapit beberapa karakter khusus sebagai pengapit pola regex (/,@, &, dsbnya).
Contoh code-nya adalah sebagai berikut :
<?php
$teks = "Nama=PHP;Website=http://www.komputasiawan.com;Komentar=Belajar Regex itu sangat berguna, terutama untuk pengolahan teks;Topik=Pengolahan Teks;";
$pola = "&Website=(.+?);&";
$hasil_arr = array();
$hasil_akhir = "";
preg_match($pola, $teks, $hasil_arr);
$hasil_akhir = $hasil_arr[1];
echo "<pre>";
print_r($hasil_arr);
echo "URL website = $hasil_akhir";
echo "</pre>";
?>
Dan berikut adalah hasil yang didapatkan :
Array
(
[0] => Website=http://www.komputasiawan.com;
[1] => http://www.komputasiawan.com
)
URL website = http://www.komputasiawan.com
Sederhana bukan ?
Penutup
Penggunaan pola regular expression (regex) di PHP dengan menggunakan fungsi preg_match() sangat berguna untuk mengolah teks sederhana sampai dengan yang kompleks. Hal yang perlu kita kuasai adalah pengetahuan mengenai regex itu sendiri.
Demikian artikel ini dibuat, semoga dapat berguna. Nantikan artikel selanjutnya.
1 komentar:
sip, makasih penjelasannya mengenaii preg_match()
Posting Komentar