Section Artikel
Pengertian Ekspresi Reguler PHP
Ekspresi reguler digunakan untuk mencari dan mengganti pola dalam string.
Instalasi
Fungsi ekspresi reguler PHP adalah bagian dari inti PHP. Jadi, tidak memerlukan instalasi untuk menggunakan fungsi-fungsi ini.
Konfigurasi Runtime
Pengaturan di php.ini ini dapat digunakan untuk membatasi jumlah waktu atau sumber daya yang digunakan saat mengevaluasi ekspresi reguler.
Nama | Default | Deskripsi | Changeable |
---|---|---|---|
pcre.backtrack_limit | “1000000” | Jumlah backtrack maksimum yang boleh dilakukan oleh mesin ekspresi reguler saat mengevaluasi ekspresi. (tersedia sejak PHP 5.2) | PHP_INI_ALL |
pcre.recursion_limit | “100000” | Kedalaman rekursi maksimum yang diizinkan untuk dicapai oleh mesin ekspresi reguler saat mengevaluasi ekspresi. (tersedia sejak PHP 5.2) | PHP_INI_ALL |
pcre.jit | “1” | Ketika diatur ke “1” hal ini dapat mengkompilasi just-in-time PCRE (Perl-Compatible Regular Expressions). (tersedia sejak PHP 7.0) | PHP_INI_ALL |
Fungsi Ekspresi Reguler PHP
Fungsi | Deskripsi |
---|---|
preg_filter() | Mengembalikan string atau array dengan kecocokan pola yang diganti, tetapi hanya jika kecocokan ditemukan |
preg_grep() | Mengembalikan array yang hanya terdiri dari elemen dari masukan array yang cocok dengan polanya |
preg_last_error() | Menampilkan kode error yang menunjukkan alasan panggilan ekspresi reguler terbaru gagal |
preg_match() | Menemukan kecocokan pertama dari sebuah pola dalam sebuah string |
preg_match_all() | Menemukan semua kecocokan pola dalam sebuah string |
preg_replace() | Mengembalikan string di mana kecocokan pola (atau pola array) diganti dengan substring (atau arrray substring) dalam string tertentu |
preg_replace_callback() | Diberikan ekspresi dan callback, mengembalikan string di mana semua kecocokan ekspresi diganti dengan substring yang dikembalikan oleh callback |
preg_replace_callback_array() | Diberikan sebuah array yang menghubungkan ekspresi dengan callback, mengembalikan string di mana semua kecocokan dari setiap ekspresi diganti dengan substring yang dikembalikan oleh callback. |
preg_split() | Memecah string menjadi array yang menggunakan pencocokan ekspresi reguler sebagai pemisah |
preg_quote() | Mengabaikan karakter yang memiliki arti khusus dalam ekspresi reguler dengan meletakkan backslash di depannya |
Pengubah Ekspresi Reguler
Pengubah ekspresi dapat mengubah cara pencarian dilakukan.
Pengubah | Deskripsi |
---|---|
i | Melakukan penelusuran tidak peka huruf besar / kecil(case-sensitive) |
m | Melakukan pencarian multiline (pola yang mencari awal atau akhir string akan cocok dengan awal atau akhir setiap baris) |
u | Mengaktifkan pencocokan yang benar dari pola enkode UTF-8 |
Pola Ekspresi Reguler
Tanda kurung digunakan untuk menemukan berbagai karakter:
Expresi | Deskripsi |
---|---|
[abc] | Temukan satu karakter dari opsi di antara tanda kurung |
[^abc] | Temukan karakter apa pun BUKAN di antara tanda kurung |
[0-9] | Temukan satu karakter dari rentang 0 hingga 9 |
Metakarakter
Metakarakter adalah karakter dengan arti khusus:
Metakarakter | Deskripsi |
---|---|
| | Temukan kecocokan untuk salah satu pola yang dipisahkan oleh | seperti dalam: kucing | anjing | ikan |
. | Temukan hanya satu contoh dari karakter apa pun |
^ | Menemukan kecocokan sebagai awal string seperti di: ^ Hello |
$ | Menemukan kecocokan di akhir string seperti di: World$ |
\d | Temukan digit |
\s | Temukan karakter spasi |
\b | Temukan kecocokan di awal kata seperti ini: \bWORD, atau di akhir kata seperti ini: WORD\ b |
\uxxxx | Temukan karakter Unicode yang ditentukan oleh angka heksadesimal xxxx |
Quantifiers
Pengukur(Quantifiers) dapat menentukan jumlah:
Quantifiers | Deskripsi |
---|---|
n+ | Cocok untuk semua string yang mengandung setidaknya satu n |
n* | Mencocokkan string apa pun yang berisi nol atau lebih kemunculan n |
n? | Cocok dengan string apa pun yang berisi nol atau satu kemunculan n |
n{x} | Cocok dengan string apa pun yang berisi urutan X n |
n{x,y} | Mencocokkan string apa pun yang berisi urutan X ke Y n |
n{x,} | Cocok dengan string apa pun yang berisi urutan setidaknya X n |
Catatan: Jika ada ekspresi yanag perlu mencari salah satu karakter khusus, kita dapat menggunakan garis miring terbalik (\) untuk menghindarinya. Misalnya, untuk mencari satu atau lebih tanda tanya dapat menggunakan ekspresi berikut: $pattern = ‘/\?+/’;