Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Pelajari Ungkapan Biasa PHP: Panduan untuk Menguasai Sintaks Biasa

Pelajari Ungkapan Biasa PHP: Panduan untuk Menguasai Sintaks Biasa

王林
王林asal
2024-01-05 11:01:41629semak imbas

Pelajari Ungkapan Biasa PHP: Panduan untuk Menguasai Sintaks Biasa

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:

  1. 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 "匹配失败!";
}
  1. 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 "匹配失败!";
}
  1. 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 "匹配失败!";
}

2. Aplikasi lanjutan:

  1. 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
  1. (?!corak): pratonton negatif ke hadapan. Kedudukan padanan tidak serta-merta diikuti oleh corak corak yang ditentukan
  2. (?
    (?
  • 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 "匹配失败!";
    }
  • 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!

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