Selang-seli Dalam Kurungan Persegi: Memahami Set Watak lwn. Kumpulan Logik
Apabila membina ungkapan biasa, adalah penting untuk memahami perbezaan antara set aksara dan kumpulan logik. Set aksara, diwakili oleh kurungan segi empat sama ([]), mentakrifkan set aksara yang mesti mengandungi rentetan yang dipadankan. Kumpulan logik, sebaliknya, diwakili oleh kurungan () dan nyatakan ungkapan alternatif yang boleh dipadankan.
Teka-teki Pergantian Regex
Dalam kes anda, anda cuba memadankan rentetan yang mengandungi 'wd', 'word' atau 'qw' dalam konteks tertentu. Pada mulanya, anda menggunakan [wd|perkataan|qw] dalam percubaan untuk mencipta selang seli. Walau bagaimanapun, pendekatan ini tidak membuahkan hasil yang diinginkan.
Perbezaan Utama
Masalahnya terletak pada fakta bahawa [wd|word|qw] ditafsirkan sebagai set watak. Ini bermakna regex hanya akan memadankan rentetan yang mengandungi mana-mana satu aksara individu 'w', 'd', 'w', 'o', 'r', 'd', 'q' dan 'w'.
Penyelesaian: Pengumpulan Logik
Untuk menggunakan selang dengan betul, anda perlu menggunakan kurungan:
Dengan melampirkan alternatif dalam kurungan, anda menentukan bahawa rentetan mesti mengandungi sama ada 'wd', 'word' atau 'qw' secara keseluruhan. Menggunakan pendekatan ini, regex anda akan berjaya memadankan rentetan seperti "baidu.com.[/?].wd=" atau "baidu.com.[/ ?].perkataan=" atau "baidu.com.[/?].qw=".
Atas ialah kandungan terperinci Apakah Perbezaan Antara Set Watak dan Pengelompokan Logik dalam Regex Alternation?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!