Memahami Perbezaan Antara Pengkuantiti ' ' dan '*' dalam Ungkapan Biasa
Dalam ungkapan biasa preg_match PHP, operator dan * digunakan sebagai pengkuantiti untuk menentukan bilangan kejadian bagi aksara atau corak sebelumnya. Berikut ialah pecahan perbezaannya:
' ' Pengkuantiti
Pengkuantiti ' ' mewakili "satu atau lebih" kejadian bagi ungkapan sebelumnya. Ia sepadan dengan sekurang-kurangnya satu contoh corak, tetapi ia boleh memadankan lebih banyak lagi jika ada.
Contoh:
(.+?)
regeks ini sepadan dengan rentetan bukan kosong watak.
'*' Pengkuantiti
The Pengkuantiti '*' mewakili "sifar atau lebih" kejadian bagi ungkapan sebelumnya. Ia sepadan dengan beberapa kali, termasuk tiada.
Contoh:
(.*?)
Reeks ini sepadan dengan mana-mana nombor (termasuk sifar) aksara.
Rakus vs. Pengkuantiti Tidak Tamak
Oleh lalai, pengkuantiti adalah tamak, bermakna ia sepadan sebanyak mungkin. Walau bagaimanapun, menambah '?' selepas pengkuantiti menjadikannya tidak tamak, menyebabkan ia sepadan sedikit sebanyak mungkin.
Contoh:
a.*?b
Dalam kes ini, .*? sepadan dengan bilangan aksara paling sedikit yang mungkin untuk mencari 'b' pertama selepas 'a'.
Atas ialah kandungan terperinci Apakah Perbezaan Antara Pengkuantiti ' ' dan '*' dalam Ungkapan Biasa?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!