Rumah > Artikel > pembangunan bahagian belakang > Bagaimanakah saya boleh memadankan corak dengan bilangan kejadian tertentu menggunakan ungkapan biasa?
Mengira Kejadian Tepat: Regex untuk Masa Tertentu
Dalam ungkapan biasa, kita sering menghadapi corak yang memerlukan bilangan kejadian tertentu. Walau bagaimanapun, tiada pengkuantiti tunggal yang memenuhi keperluan untuk memadankan elemen tepat n atau m kali.
Pertimbangkan ungkapan biasa:
X{n}|X{m}
Ungkapan ini cuba menguji kejadian unsur X tepat n atau m kali. Walau bagaimanapun, ia menggunakan gabungan pengkuantiti, yang mungkin tidak cekap.
Pendekatan Alternatif
Pendekatan alternatif untuk mengukur kejadian yang tepat ialah:
X{m}(X{k})?
Di sini:
Contoh:
Untuk memadankan corak di mana unsur "A" berlaku tepat 3 atau 5 kali, kita boleh menggunakan regex berikut:
A{3}(A{2})?
regex ini akan memadankan rentetan seperti "AAA" (3 kejadian ) atau "AAAAA" (5 kejadian) tetapi bukan "AA" atau "AAAAAAA".
Kesimpulan
Walaupun tiada pengkuantiti tunggal untuk memadankan n atau m tepat kejadian, gabungan pendakap {n} dan {m} (untuk n != m) atau penggunaan kumpulan pilihan boleh mencapai fungsi ini dengan berkesan dalam ungkapan biasa.
Atas ialah kandungan terperinci Bagaimanakah saya boleh memadankan corak dengan bilangan kejadian tertentu menggunakan ungkapan biasa?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!