Rumah  >  Artikel  >  pembangunan bahagian belakang  >  preg_match dalam PHP (Fungsi)

preg_match dalam PHP (Fungsi)

PHPz
PHPzasal
2024-08-29 12:49:51984semak imbas

Fungsi preg_match() Bahasa Pengaturcaraan PHP mencari rentetan untuk corak, dan kemudian fungsi mengembalikan TRUE hanya jika corak wujud, atau fungsi preg_match() akan mengembalikan FALSE. Fungsi Preg_match() pada asasnya berfungsi menggunakan beberapa parameter, yang sangat berguna dan membantu dalam mencari corak rentetan di dalam data rentetan input/corak rentetan. Parameter pertama adalah untuk menyimpan corak rentetan untuk dicari. Parameter kedua adalah untuk menyimpan rentetan input. Kami menggunakan fungsi preg_match() untuk mencari corak rentetan yang diperlukan dalam data rentetan. Parameter "padanan", apabila disertakan dan digunakan dengan cetakan, akan mencari kandungan rentetan yang sepadan dan memaparkannya dalam output.

IKLAN Kursus Popular dalam kategori ini PEMBANGUN PHP - Pengkhususan | 8 Siri Kursus | 3 Ujian Olok-olok

Mulakan Kursus Pembangunan Perisian Percuma Anda

Pembangunan web, bahasa pengaturcaraan, ujian perisian & lain-lain

Sintaks:

Int preg_match($pattern, $input, $matches, $flags, $offset)

Penjelasan:

  • Fungsi preg_match() bahasa PHP biasanya menerima hanya 5 parameter, seperti yang dinyatakan di atas dalam lajur sintaks, yang berada di dalam fungsi preg_match().
  • Fungsi preg_match() terdiri daripada lima parameter: corak, input, padanan, bendera dan ofset.
  • Setiap parameter dalam fungsi preg_match() membantu dalam mencari corak rentetan dalam rentetan besar atau dokumen yang mengandungi data rentetan alfanumerik.

Bagaimanakah preg_match berfungsi dalam PHP?

Fungsi preg_match() dalam bahasa pengaturcaraan PHP mencari corak rentetan dalam senarai besar ayat rentetan atau data lain. Ia hanya mengembalikan nilai TRUE jika corak rentetan ditemui. Jika tidak, ia mengembalikan nilai FALSE. Fungsi Preg_match() PHP biasanya berfungsi berdasarkan lima parameter yang disertakan di dalam fungsi preg_match ().

Diberikan di bawah adalah parameter:

1. Parameter Corak: Ini ialah parameter preg_match() PHP, yang digunakan untuk menahan corak untuk mencari rentetan sebagai rentetan. Kami menandakan corak sebagai pembolehubah dengan menggunakan simbol "$" di dalam fungsi.

2. Parameter Input: Parameter input, yang berada di dalam fungsi preg_match(), memegang nilai input rentetan/ rentetan.

3. Parameter Padanan: Parameter Padanan, yang berada di dalam preg_match(), akan memberikan hasil carian hanya jika padanan wujud. Padanan bermakna rentetan yang sama ada atau tidak. $matches[0] sebenarnya akan mengandungi teks penuh, iaitu corak rentetan padanan penuh. $matches[1] akan mengandungi teks rentetan yang sepadan dengan sub-corak yang ditangkap dalam kurungan pertama dan lain-lain.

Kebanyakan corak rentetan akan ditemui di $matches[0][0], $matches[1][0], $matches[2][0], $matches[3][0] dsb. Di $matches[0][1], $matches[1][1], $matches[2][1] dan $matches[3][1], anda akan menemui NULL, yang bermaksud 0 sebagai corak rentetan nilai kerana ia tidak menyimpan apa-apa dalam tatasusunan padanan.

4. Parameter Bendera: Parameter bendera boleh mengandungi beberapa bendera lain, yang sangat membantu dalam mengendalikan carian corak rentetan.

  • PREG_OFFSET_CAPTURE FLAG: Jika anda menghantar bendera ke fungsi preg_match(), ia akan mengembalikan offset/offset yang dilampirkan untuk setiap rentetan padanan.
  • PREG_UNMATCHED_AS_NULL FLAG: Bendera ini berguna untuk melaporkan sebagai NULL. Apabila bendera diluluskan, maka sub-corak akan dilaporkan sebagai NULL kerana sub-corak itu langsung tidak sepadan.

5. Parameter Offset: Parameter ofset fungsi preg_match() sangat membantu dalam mencari dari awal rentetan yang dihantar sebagai input. Parameter offset ini adalah pilihan dan tidak diperlukan pada setiap masa. Anda boleh menggunakannya berdasarkan keperluan. Parameter "offset" menentukan kedudukan permulaan untuk carian rentetan.

6. Nilai pulangan daripada preg_match(): Fungsi preg_match() PHP akan sentiasa mengembalikan TRUE hanya jika corak rentetan wujud sebaliknya, fungsi preg_match() akan kembali sebagai FALSE.

Contoh preg_match dalam PHP

Diberikan di bawah adalah contoh:

Contoh #1

Ini menggambarkan preg_match() menggunakan bendera PREG_OFFSET_CAPTURE. "$pavan1" dicipta dan disimpan sebagai nilai rentetan "PavanKumarSake" dan diberikan kepada "$pavan1". Kemudian preg_match() diisytiharkan dengan parameter.

‘/(Pavan)(Kumar)(Sake)/’ is the pattern parameter that holds the pattern, which is to search in the input string/string value. Next, we insert the variable “$pavan1” as an input variable. This variable usually contains the string element that we need to search to determine if the string variable’s value exists within it or not. Next, we place the variable “$matches1” after the comma following the variable “$pavan1”. This is helpful to check at what position the patterns are available inside the input string ”PavanKumarSake”.

In the above preg_match() working explanation, we said that what $matches[0] and $matches[1] will return. Likewise, in the below example, $matches[1] will provide the result that is/are fully matched with the pattern/patterns. So the output of array[0] is “PavanKumarSake” because it contains the full string/text.

Then array[1][0] will be “Pavan” then array[2][0] is “Kumar” and array[3][0] is “Sake” based on example1’s output. Then the “print_r($matches1)” is to print what matches are available inside the input string and also shows at what position the string pattern/patterns are available inside the string pattern. Print_r will show the output of the above preg_match() program of PHP Programming Language.

Code:

<?php
$pavan1 = 'PavanKumarSake';
preg_match('/(Pavan)(Kumar)(Sake)/', $pavan1, $matches1, PREG_OFFSET_CAPTURE);
print_r($matches1);
?>

Output:

preg_match dalam PHP (Fungsi)

Example #2

In the example below, we assign the string value “www.profitloops.com” to the variable $pro_url. To check if the word “profit” is present in the variable $pro_url, you can use an if statement with the preg_match function. If the function returns a non-zero value, indicating a match, the if condition will consider it as true.

You can then execute the desired statement. The statement “The URL www.profitloops.com contains profit” will be printed if the word “profit” is present in the URL. The browser will display the output below the output section. If the word “profit” is not present in www.profitloops.com, then statements that are in the ELSE condition will be printed.

We use another IF statement to check if the word “loops” appears in the word located at www.profitloops.com. If the condition is a fault, then the ELSE condition’s statements will be printed. But here, the IF conditions are TRUE, so the statements that are inside of the IF will be printed.

Code:

<?php
$pro_url = "www.profitloops.com";
if (preg_match("/profit/", $pro_url))
{
echo "the url $pro_url contains profit , ";
}
else
{
echo "the url $pro_url does not contain profit , ";
}
if (preg_match("/loops/", $pro_url)){
echo "the url $pro_url contains loops , ";
}
else{
echo "the url $pro_url does not contain loops , ";
}
?>

Output:

preg_match dalam PHP (Fungsi)

Atas ialah kandungan terperinci preg_match dalam PHP (Fungsi). Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel sebelumnya:PHP fpmArtikel seterusnya:PHP fpm