Pengenalan Regex (Regular Expression) di PHP

Posted on Updated on


Mungkin teman-teman yang sering atau sedang belajar mengenai pemograman di PHP, perl atau bahasa pemograman lainnya, pernah mendengar isrilah regex. Oke sekarang kita belajar mengenai regex atau Regular Expression yang ada di PHP, di sini kita akan melihat kegunaan dan contoh aplikasi regex di bahasa pemograman PHP.

Apa itu Regex?

Apa itu regex? Regex adalah kepanjangan dari Regular Expression. Biasanya regex berguna untuk pencocokan pola teks atau string, biasanya untuk manipulasi string yang lebih kompleks.

Apa aja sih guna regex dalam pemograman PHP? Ada banyak, misalnya untuk proses validasi suatu teks (contoh validasi email yang harus ada karakter @ .), untuk proses filter suatu form, misalnya, jika ada teks yang berbau porno, langsung anda blok. Untuk proses replacing, misalnya jika ada karakter🙂 maka kita ganti dengan image smile, untuk pencarian kata dan masih banyak lagi.
Contoh Regex di PHP

Oke supaya lebih mengerti mari kita lihat beberapa contoh regex berikut:

Contoh 1: Mengambil kalimat dalam pola tertentu, Ini biasanya berguna jika anda ingin mengekstrak suatu halaman website dan hanya mengambil teks tertentu. Misalnya anda mau mengambil kalimat-kalimat yang terdapat di antara tag dan

<!–?php
$konten = “hai apa kabar

Ini adalah judul berita suatu web“;

preg_match(“/(.*)<\/span>/”,$konten,$cocok);

echo $cocok[1];
?>

Output dari kode di atas adalah : Ini adalah judul berita suatu web

preg_match adalah fungsi regex di PHP, sintaksnya adalah sebagai berikut:

int preg_match ( string $pattern , string $subject [, array &$matches ] )
$pattern, adalah pola string yang ingin dicari
$subject, adalah teks yang akan diolah
$matches, adalah hasil pencarian, $matches[0] akan menghasilkan hasil pencarian full dengan pola, sedangkan $matches[1] akan menghasilkan teks yang dicari sebagian dari parent-nya.

. (titik) artinya adalah karakter apapun kecuali \n
* artinya jumlah karakternya 0 atau lebih
( ) gunanya untuk penggrup-an atau mengambil teks
Jadi (.*) artinya mengambil teks dengan karakter apapun dan jumlahnya apapun
(.*)<\/span> artinya cari kalimat dengan pola ada teks tulisan apapun di sini

Contoh 2: Validasi Teks, kita akan menvalidasi apakah teks tersebut adalah format suatu email,

<!–?php
$email1 = “desrizal@yahoo.co.id”;

$email2 = “desriza@drz”;

if(preg_match(“/\w+@\w+\.[a-zA-Z]+/i”,$email1)){

echo “Pola email benar”;
}else{
echo “Pola email salah”;
}

echo “

“;
if(preg_match(“/\w+@\w+\.[a-zA-Z]+/i”,$email2)){
echo “Pola email benar”;

}else{
echo “Pola email salah”;
}
?>

Keterangan:
\w artinya karakter huruf dan angka
[a-zA-Z] artinya karakter huruf saja, baik huruf kecil atau besar

Contoh 3: Validasi teks, mengecek apakah suatu teks mengandung karakter selain angka

Keterangan:
[^0-9] artinya bukan karakter angka
[0-9] artinya karakter angka

Nah kode-kode karakter untuk regex di atas namanya adalah meta-characters, tulisan selanjutnya kita akan mengenal lebih jauh apa saja kode-kode met-characters untuk regex, fungsinya dan contoh-contohnya.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s