Home » PHP » Fungsi preg_filter() RegEx PHP

Fungsi preg_filter() RegEx PHP

by Hanifah Nurbaeti
by Hanifah Nurbaeti

Section Artikel

Definisi dan Penggunaan

Fungsi preg_filter() digunakan untuk mengembalikan string atau string array di mana kecocokan pola telah diganti dengan string pengganti.

Jika inputnya adalah array, maka fungsi ini mengembalikan array. Jika input berupa string maka fungsi ini akan mengembalikan string.

Fungsi ini mirip dengan preg_replace() dengan satu perbedaan: Ketika kecocokan untuk pola tidak ditemukan dalam string input, string tidak akan digunakan dalam nilai yang dikembalikan. Dalam skenario ini, jika input adalah string, bukan array, maka fungsi mengembalikan null.

String pengganti mungkin berisi referensi latar dalam bentuk \n atau $n di mana n adalah indeks grup dalam pola. Dalam string yang dikembalikan, instance \n dan $n akan diganti dengan substring yang cocok dengan grup atau jika \0 atau $0 digunakan, oleh seluruh ekspresi.

Syntax

preg_filter(pattern, replacement, input, limit, count)

Nilai Parameter

ParameterDeskripsi
patternRequired. Berisi ekspresi reguler yang menunjukkan apa yang harus dicari
replacementRequired. Sebuah string yang akan menggantikan pola yang cocok. Ini mungkin berisi latar referensi
inputRequired. Sebuah string atau array string tempat penggantian dilakukan
limitOptional. Default-nya -1, artinya tidak terbatas. Menetapkan batas berapa banyak penggantian yang dapat dilakukan di setiap string
countOptional. Setelah fungsi dijalankan, variabel ini akan berisi angka yang menunjukkan berapa banyak penggantian yang dilakukan

Detail Teknis

Return Value:Mengembalikan array string yang diganti jika inputnya adalah array , string dengan penggantian yang dibuat jika inputnya adalah string atau null jika inputnya adalah string dan tidak ada kecocokan yang ditemukan
PHP Version:5.3.0

Contoh
Bungkus angka dalam tanda kurung dalam daftar string:

<?php
$input = [
  "Sekarang jam 4",
  "40 hari",
  "Tidak ada nomor",
  "pada tahun 2000"
];

$result = preg_filter('/[0-9]+/', '($0)', $input);
print_r($result);
?>
  /* Output :
Array
(
    [0] => Sekarang jam 4
    [1] => (40) hari
    [3] => pada tahun (2000)
)

You may also like