Panduan Ungkapan Biasa PHP: Menguasai sintaks ungkapan biasa memerlukan contoh kod khusus
Pengenalan:
Dalam pembangunan PHP, ungkapan biasa ialah alat yang sangat berkuasa. Ia boleh membantu kami menyelesaikan pelbagai operasi pemadanan rentetan, penggantian dan pengekstrakan. Walau bagaimanapun, sintaks ungkapan biasa agak rumit dan mungkin agak mengelirukan untuk pemula. Dalam panduan ini, kami akan menumpukan pada beberapa sintaks ungkapan biasa yang biasa digunakan dan menyediakan contoh kod khusus untuk membantu pembaca memperoleh pemahaman yang lebih baik.
1. Sintaks asas:
- Padanan aksara:
Dalam ungkapan biasa, kita boleh menggunakan aksara biasa untuk dipadankan secara langsung. Sebagai contoh, ungkapan biasa "/hello/" akan sepadan dengan "hello" dalam rentetan.
Contoh kod:
$pattern = "/hello/";
$string = "hello world!";
if (preg_match($pattern, $string)) {
echo "匹配成功!";
} else {
echo "匹配失败!";
}
Salin selepas log masuk
- Metacharacter:
Metacharacter ialah aksara khas dalam ungkapan biasa yang mempunyai makna istimewa. Berikut ialah beberapa aksara meta yang biasa digunakan dan maksudnya:
- : Padan dengan mana-mana aksara (kecuali baris baharu)
- w : Padan dengan mana-mana huruf, nombor atau garis bawah
- d : Padan dengan mana-mana nombor
- s : Padan dengan mana-mana aksara ruang putih. (termasuk ruang, tab, baris baharu, dsb.)
- : Padankan sempadan perkataan
Kod contoh:
$pattern = "/he.l/";
$string = "hello world!";
if (preg_match($pattern, $string)) {
echo "匹配成功!";
} else {
echo "匹配失败!";
}
Salin selepas log masuk
- Ulang padanan:
Dalam ungkapan biasa, kita boleh menggunakan pengkuantiti untuk menentukan bilangan padanan. Berikut ialah beberapa pengkuantiti yang biasa digunakan dan maknanya:
- : Padankan aksara sebelumnya sifar atau lebih kali
- : Padankan aksara sebelumnya satu atau lebih kali
- watak Watak sifar atau satu kali
- {n} : Padankan watak sebelumnya tepat n kali
- {n,} : Padankan watak sebelumnya sekurang-kurangnya n kali
- {n,m} : Padankan watak sebelumnya sekurang-kurangnya n kali , tetapi tidak Lebih daripada m kali
Contoh kod:
$pattern = "/ab*c/";
$string = "ac";
if (preg_match($pattern, $string)) {
echo "匹配成功!";
} else {
echo "匹配失败!";
}
Salin selepas log masuk
2. Aplikasi lanjutan:
- Pemadanan kumpulan:
Dalam ungkapan biasa, kita boleh menggunakan kurungan untuk mengumpulkan sekumpulan aksara untuk memadankannya secara keseluruhan. Pada masa yang sama, kita juga boleh merujuk kepada kumpulan ini dengan menggunakan rujukan belakang. . Berikut ialah beberapa pernyataan lebar sifar yang biasa digunakan:
(?=corak) : carian positif positif. Kedudukan padanan diikuti oleh corak corak yang ditentukan
- (?!corak): pratonton negatif ke hadapan. Kedudukan padanan tidak serta-merta diikuti oleh corak corak yang ditentukan
(?<=corak): prasemakan positif songsang. Kedudukan padanan serta-merta didahului oleh corak corak yang ditentukan
(?- Kod contoh:
$pattern = "/(d{4})-(d{2})-(d{2})/";
$string = "2022-02-28";
if (preg_match($pattern, $string, $matches)) {
echo "匹配成功!";
echo "年份:" . $matches[1] . ",月份:" . $matches[2] . ",日期:" . $matches[3];
} else {
echo "匹配失败!";
}
Salin selepas log masuk
- Kesimpulan:
Ekspresi biasa ialah alat yang sangat praktikal dalam pembangunan PHP. Sangat penting untuk pembangun menguasai sintaks asas dan senario aplikasi biasa daripada. Saya harap panduan ini dapat membantu pembaca lebih memahami dan menggunakan ungkapan biasa, serta memberikan bantuan untuk pemprosesan rentetan dalam projek sebenar. - (bilangan perkataan: 989)
Atas ialah kandungan terperinci Pelajari Ungkapan Biasa PHP: Panduan untuk Menguasai Sintaks Biasa. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!