Definisi dan Penggunaan
Fungsi preg_match()
digunakan untuk dapat mengembalikan apakah kecocokan ditemukan dalam string.
Syntax
preg_match(pattern, input, matches, flags, offset)
Nilai Parameter
Parameter | Deskripsi |
---|---|
pattern | Required. Berisi ekspresi reguler yang menunjukkan apa yang harus dicari |
input | Required. String tempat pencarian akan dilakukan |
matches | Optional. Variabel yang digunakan dalam parameter ini akan diisi dengan array yang berisi semua kecocokan yang ditemukan |
flags | Optional. Serangkaian opsi yang mengubah cara susunan array terstruktur: PREG_OFFSET_CAPTURE – Jika opsi ini diaktifkan, setiap kecocokan, daripada menjadi string, maka akan menjadi array di mana elemen pertama adalah substring yang berisi kecocokan dan elemen kedua adalah posisi karakter pertama substring di input.PREG_UNMATCHED_AS_NULL – Jika opsi ini diaktifkan, subpola yang tidak cocok akan dikembalikan sebagai NULL, bukan sebagai string kosong. |
offset | Optional. Default-nya 0. Menunjukkan seberapa jauh ke dalam string untuk mulai mencari. Fungsi preg_match() tidak akan menemukan kecocokan yang terjadi sebelum posisi yang diberikan dalam parameter ini |
Detail Teknis
Return Value: | Mengembalikan 1 jika kecocokan ditemukan, 0 jika tidak ada kecocokan yang ditemukan dan false jika terjadi kesalahan |
---|---|
PHP Version: | 4+ |
Changelog: | PHP 7.2 – Menambahkan tanda PREG_UNMATCHED_AS_NULL PHP 5.3.6 – Fungsi mengembalikan nilai false ketika offset lebih panjang dari panjang input PHP 5.2.2 – Subpattern bernama dapat menggunakan sintaks (?’name’) dan (? <name> ) selain sintaks sebelumnya (?P<name> ) |
Contoh 1
Gunakan ekspresi reguler untuk melakukan penelusuran tidak peka huruf besar kecil(case-sensitive) untuk “dosenit” dalam sebuah string:
<?php $str = "Visit DosenIT"; $pattern = "/dosenit/i"; echo preg_match($pattern, $str); ?> // Output : 1
Contoh 2
Gunakan PREG_OFFSET_CAPTURE untuk menemukan posisi dalam string masukan di mana kecocokan ditemukan:
<?php $str = "Selamat Datang di DosenIT"; $pattern = "/dosenit/i"; preg_match($pattern, $str, $matches, PREG_OFFSET_CAPTURE); print_r($matches); ?> // Output : Array ( [0] => Array ( [0] => DosenIT [1] => 19 ) )