Learn
← Previous Next →

Hari 19: String Lanjutan & Regex

55 min Last updated 09 Apr 2026

Regular Expression di PHP

$email = "budi@example.com";

// preg_match — cek apakah cocok
if (preg_match("/^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$/", $email)) {
    echo "Email valid\n";
}

// preg_match_all — semua kecocokan
$teks = "Harga: Rp100000, Diskon: Rp20000";
preg_match_all("/\d+/", $teks, $matches);
print_r($matches[0]); // ["100000", "20000"]

// preg_replace — ganti dengan pattern
$hasil = preg_replace("/\d+/", "XXX", $teks);
echo $hasil; // Harga: RpXXX, Diskon: RpXXX

// preg_split — pecah dengan pattern
$kata = preg_split("/[\s,;]+/", "apel,mangga; pisang durian");
print_r($kata); // ["apel", "mangga", "pisang", "durian"]

Heredoc & Nowdoc

$nama = "Budi";
$pesan = <<

💡 Notice: $matches[0] berisi array semua string yang cocok. array_map("intval", ...) mengonversi string ke integer.

Assignment

Gunakan preg_match_all untuk ekstrak semua angka dari string "Skor: 95, 87, 73, 91, 68". Hitung rata-ratanya dan tampilkan "Rata-rata: X.XX".

Expected output:

Rata-rata: 82.80
PHP index.php
Solution
Output