Rabu, 28 Januari 2009

Posted By; Anggi
Mengecek Karakter dengan Regular Expressions
05-07-2007 | 18:14:59 | Halaman Ini dibaca 310 kali


Anda mau membuat system check karakter dengan menggunakan Regular Expressions??

Berikut ada script sederhana yang mungkin bisa menjadi inspirasi anda:

$line = "ilmuwebsite";

if (eregi ("^[a-z]+$", $line)) {
// .. lakukan jika benar
echo "Benar";

} else {
// .. lakukan jika salah
echo "Salah";

}
?>

Deskripsi:
Fungsi if : saya kira anda sudah tahu
fungsi eregi : ini adalah fungsi untuk membandingkan
sedangkan ^[a-z]+$ : ini adalah Regular Expressions

Yang berarti:
^ : harus di awal
[a-z] : karakter a sampai z
+ : lebih dari satu
$ : harus di akhir

Jadi artinya:
1. didepan harus ada karakter a-z
2. di tengah ada karakter a-z boleh lebih dari 1
3. di akhir harus ada karakter a-z

Logika:
Bandingkan kombinasi Regular Expressions ^[a-z]+$ dengan strng $line yang ber isi "ilmuwebsite"
jika benar tampilkan tulisan Benar, dan juka salah tampilkan tulisan salah

Ada juga script yang lain:
if (ereg ("^[[:alpha:]]+$", $line)) {
// .. lakukan jika benar
echo "Benar";

} else {
// .. lakukan jika salah
echo "Salah";

}
?>

Penjelasan:
Disin kita menggunakan fungsi ereg yang berarti case sensitif, lalu kita juga menggunakan [[:alpha:]] sebagai alternatif lain dari Regular Expression.

Berikut daftar tabel nya:


Name Description
[[:alnum:]] All alphanumeric characters [a-zA-Z0-9]
[[:alpha:]] All alphabetic characters [a-z]
[[:blank:]] Tab and space [\t ]
[[:cntrl:]] All the control characters
[[:digit:]] All decimal digits [0-9]
[[:graph:]] All printable characters except space
[[:lower:]] All lowercase letters [a-z]
[[:print:]] All printable characters
[[:punct:]] Punctuation marks [\.,;:-]
[[:space:]] All whitespace characters
[[:upper:]] All the uppercase letters [A-Z]
[[:xdigit:]] The set of hexadecimal digits

Untuk artikel berikutnya saya coba akan jelaskan Regular Expression secara lebih jauh
terimakasih