Cara Menggunakan Fungsi preg_match_all() dalam PHP

Cara Menggunakan Fungsi Preg Match All Dalam Php



preg_match_all() ialah fungsi terbina dalam PHP yang digunakan untuk memadankan corak tertentu dalam rentetan. Anda boleh menggunakan fungsi ini untuk melaksanakan padanan ungkapan biasa dan mengekstrak data daripada rentetan. Ia boleh menjimatkan masa dan usaha dalam kes di mana anda perlu mencari berbilang kejadian corak dan digunakan secara meluas dalam penghuraian teks dan aplikasi pengekstrakan data PHP.

Sintaks

Berikut ialah sintaks untuk menggunakan preg_match_all dalam PHP:







preg_match_all ( corak , input , perlawanan , bendera , mengimbangi )

The preg_match_all menerima parameter berikut, tiga adalah parameter wajib dan dua adalah pilihan:



  • corak : Ia adalah parameter wajib; ia mengandungi ungkapan biasa yang perlu dicari.
  • input : Yang kedua juga merupakan parameter wajib, kerana ia adalah rentetan di mana carian dilakukan.
  • perlawanan : Ia menyimpan output dalam tatasusunan yang mengandungi semua padanan.
  • bendera : Ia menerangkan cara tatasusunan carian atau padanan distrukturkan. Ia mengubah suai tingkah laku carian fungsi. Bendera berikut boleh digunakan:
  • mengimbangi : Ia adalah parameter pilihan yang menentukan kedudukan permulaan carian.
Bendera Penerangan
PREG_PATTERN_ORDER Tatasusunan terhasil mempunyai semua padanan tatasusunan untuk setiap elemen ungkapan biasa.
PREG_SET_ORDER Elemen tatasusunan padanan setiap satu mengandungi padanan daripada setiap kumpulan untuk salah satu padanan rentetan yang ditemui.
PREG_OFFSET_CAPTURE Ia mengembalikan padanan dengan kedudukan mengimbangi bait yang sepadan dalam rentetan subjek.
PREG_UNMATCHED_AS_NULL Corak yang tidak sepadan akan dilaporkan sebagai NULL.

Contoh 1

Pertimbangkan contoh penggunaan berikut preg_match_all() fungsi dalam PHP. Dalam kod ini, kami sedang mencari perkataan Linux dalam rentetan. Fungsi ini mengeluarkan bilangan padanan yang ditemui terhadap perkataan Linux :





$rentetan = 'Helo peminat Linux, Selamat Datang ke LinuxHint!' ;

$corak = '/Linux/' ;

$perlawanan = tatasusunan ( ) ;

preg_match_all ( $corak , $rentetan , $perlawanan ) ;

print_r ( $perlawanan [ 0 ] ) ;

?>





Contoh 2

Dalam kod contoh ini, kami sedang mencari perkataan E dalam rentetan. I kecil digunakan untuk menjadikan carian tidak sensitif huruf besar. Ia akan mengembalikan semua kejadian rentetan perkataan E atau e:



$rentetan = 'SELAMAT DATANG KE AS.' ;

$patternRex = '/E/i' ;

$matchFound = preg_match_all ( $patternRex , $rentetan , $perlawanan ) ;

jika ( $matchFound ) {

bergema '' ;

print_r ( $perlawanan ) ;

}

?>



Contoh 3

Jika corak yang anda cari tidak terdapat dalam rentetan, fungsi akan mengembalikan palsu, menunjukkan ralat. Untuk mengendalikan ini, anda boleh menggunakan pernyataan if-else. Jika corak tidak ditemui, anda boleh mencetak mesej menggunakan pernyataan else untuk memaklumkan pengguna bahawa corak tidak ditemui.



$rentetan = 'PHP ialah bahasa skrip yang popular' ;

$patternRex = '/peE/' ;

$matchFound = preg_match_all ( $patternRex , $rentetan , $perlawanan ) ;

jika ( $matchFound ) {

bergema '' ;

bergema 'Perlawanan Ditemui.' ;

print_r ( $perlawanan ) ;

} lain {

bergema 'Tiada padanan ditemui.' ;

}

?>

Catatan : The tag dalam kod di atas digunakan untuk memformat output.

Pokoknya

Ungkapan biasa ialah alat yang berkuasa untuk mencari dan memanipulasi teks dalam PHP. The preg_match_all() fungsi ialah fungsi PHP terbina dalam yang digunakan untuk melakukan padanan ungkapan biasa terhadap rentetan dan mendapatkan semula semua kemunculan corak dan jika corak itu tidak wujud, ia akan mengembalikan palsu. Memahami preg_match_all() fungsi akan membantu pengguna untuk mengendalikan dan memproses data teks dengan lebih baik dalam PHP.