Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Cara menggunakan fungsi ekspresi biasa dalam PHP

Cara menggunakan fungsi ekspresi biasa dalam PHP

WBOY
WBOYasal
2023-05-18 12:21:05862semak imbas

Dalam PHP, ungkapan biasa ialah alat yang sangat berkuasa yang boleh digunakan untuk memadankan corak dalam teks. PHP menyediakan banyak fungsi terbina dalam untuk mengendalikan ungkapan biasa, menjadikannya lebih mudah dan lebih pantas.

Dalam artikel ini, kita akan mempelajari cara menggunakan fungsi ekspresi biasa dalam PHP, meliputi topik berikut:

  1. Sintaks Ungkapan Biasa
  2. fungsi preg_match
  3. fungsi preg_match_all
  4. fungsi preg_replace
  5. fungsi preg_split
  6. Beberapa fungsi berguna lain
  7. Sintaks ungkapan biasa
>Dalam PHP, sintaks ungkapan biasa termasuk aksara meta berikut:

Mewakili mana-mana aksara tunggal

^ mewakili bermula dengan aksara atau rentetan tertentu
$ mewakili bermula dengan The. hujung aksara atau rentetan tertentu
[] mewakili set aksara tertentu
| mewakili operasi logik ATAU
() digunakan untuk menangkap teks yang dipadankan

    mewakili aksara atau subungkapan sebelumnya boleh muncul sifar atau lebih kali
  • bermakna aksara atau subungkapan sebelumnya boleh muncul satu atau lebih kali
  • bermakna aksara atau subungkapan sebelumnya boleh muncul sifar atau sekali
Selain aksara meta ini, ungkapan biasa juga menyokong beberapa kelas aksara khas dan aksara melarikan diri. Ini boleh didapati dalam manual PHP.

    fungsi preg_match
Fungsi preg_match ialah fungsi yang sangat biasa digunakan, digunakan untuk mencari corak dalam teks yang sepadan dengan ungkapan biasa yang ditentukan. Ia mengembalikan rentetan padanan pertama.

Berikut ialah sintaks asas fungsi preg_match:

preg_match ( string $pattern , string $subject [, array &$matches [, int $flags = 0 [, int $offset = 0 ] ]] ): int|false

Di mana $pattern ialah ungkapan biasa dan $subject ialah teks yang hendak dicari.

Sebagai contoh, kami ingin mencari perkataan "php" pertama daripada rentetan. Berikut ialah contoh menggunakan preg_match:

$str = "Ini ialah pengaturcaraan php.";

jika (preg_match("/php/", $str)) {
echo "Match found ! ";
} lain {
bergema "Padanan tidak ditemui.";
}

Hasil keluaran:

Padanan ditemui!

Contoh ini , kami menggunakan preg_match untuk mencari corak "php" dalam rentetan $str.

    fungsi preg_match_all
Berbeza daripada fungsi preg_match, fungsi preg_match_all mencari teks untuk corak yang sepadan dengan ungkapan biasa yang ditentukan dan mengembalikan semua rentetan yang dipadankan.

Berikut ialah sintaks asas fungsi preg_match_all:

preg_match_all ( string $pattern , rentetan $subjek [, array &$matches [, int $flags = PREG_PATTERN_ORDER [, int $offset = 0 ] ]] ): int|false

Dalam contoh ini, $pattern ialah ungkapan biasa dan $subject ialah teks yang hendak dicari. $matches ialah tatasusunan yang menyimpan semua rentetan yang dipadankan.

Sebagai contoh, kami ingin mencari semua nombor dalam rentetan. Berikut ialah contoh menggunakan fungsi preg_match_all:

$str = "Pada tahun 2020, saya bertemu dengan 18 orang, dan pada tahun 2019, saya bertemu dengan 10 orang.";

preg_match_all("/d+/", $ str, $matches);
print_r($matches);

Hasil keluaran:

Array

(

[0] => Array
    (
        [0] => 2020
        [1] => 18
        [2] => 2019
        [3] => 10
    )

)

dalam Dalam contoh ini, kami menggunakan preg_match_all untuk mencari semua nombor dalam rentetan $str, dan menggunakan fungsi print_r untuk mengeluarkan nombor yang dicari.

    fungsi preg_replace
Fungsi preg_replace digunakan untuk mencari corak ungkapan biasa yang ditentukan dalam teks dan menggantikannya dengan rentetan yang ditentukan.

Berikut ialah sintaks asas fungsi preg_replace:

preg_replace ( campur $pattern , campuran $replacement , campuran $subjek [, int $limit = -1 [, int &$count ]] ) : bercampur

Dalam contoh ini, $pattern ialah ungkapan biasa, $replacement ialah rentetan untuk menggantikan teks yang dipadankan dan $subject ialah teks yang hendak dicari. $limit ialah nombor maksimum untuk diganti.

Sebagai contoh, kami ingin mengalih keluar semua nombor daripada rentetan. Berikut ialah contoh menggunakan fungsi preg_replace:

$str = "Pada tahun 2020, saya bertemu dengan 18 orang, dan pada tahun 2019, saya bertemu dengan 10 orang.";

$pattern = '/d+/';
$replacement = '';
echo preg_replace($pattern, $replacement, $str);

Hasil keluaran:

Dalam , saya bertemu orang dan dalam , saya bertemu orang.

Dalam contoh ini, kami menggunakan fungsi preg_replace untuk mencari semua nombor dan menggantikannya dengan rentetan kosong.

    fungsi preg_split
Fungsi preg_split digunakan untuk memisahkan rentetan teks berdasarkan corak ungkapan biasa yang ditentukan.

Berikut ialah sintaks asas fungsi preg_split:

preg_split ( rentetan $pattern , rentetan $subjek [, int $limit = -1 [, int $flags = 0 ]] ) : array

Dalam contoh ini, $pattern ialah ungkapan biasa dan $subject ialah rentetan teks yang akan dipecahkan. $limit ialah nombor maksimum untuk dipecahkan.

Sebagai contoh, kami ingin membahagikan rentetan yang dipisahkan koma kepada tatasusunan. Berikut ialah contoh menggunakan fungsi preg_split:

$str = "epal,oren,pisang,anggur";

$array = preg_split("/,/", $str);
print_r ($array);

Hasil keluaran:

Array

(

[0] => apple
[1] => orange
[2] => banana
[3] => grape

)

Dalam contoh ini, kami menggunakan fungsi preg_split berdasarkan koma Pisahkan rentetan kepada tatasusunan.

  1. Beberapa fungsi berguna lain

Selain fungsi di atas, PHP juga menyediakan banyak fungsi ekspresi biasa lain yang berguna:

preg_grep: untuk mencari elemen tatasusunan yang sepadan ungkapan biasa dan mengembalikan tatasusunan baharu yang mengandungi elemen padanan.

preg_filter: Digunakan untuk mencari elemen dalam tatasusunan yang sepadan dengan ungkapan biasa dan menggantikannya dengan rentetan gantian yang ditentukan.

preg_last_error: Mengembalikan kod ralat bagi fungsi ungkapan biasa terakhir.

  1. Ringkasan

Fungsi ungkapan biasa dalam PHP memberikan kefleksibelan dan kuasa operasi asas untuk memanipulasi teks dengan mudah. Memahami penggunaan dan sintaks fungsi ini dalam PHP ialah langkah pertama dalam mempelajari ungkapan biasa.

Atas ialah kandungan terperinci Cara menggunakan fungsi ekspresi biasa dalam PHP. 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:Fungsi analisis data fungsi PHPArtikel seterusnya:Fungsi analisis data fungsi PHP