Rumah >pembangunan bahagian belakang >Tutorial Python >Bagaimanakah Saya Boleh Menggunakan Ungkapan Biasa untuk Memadankan Keseluruhan Perkataan dalam Rentetan?
Padankan Seluruh Perkataan dalam Rentetan Menggunakan Regex Dinamik
Tugas memadankan keseluruhan perkataan dalam rentetan boleh dicapai menggunakan regex. Walau bagaimanapun, mencipta berbilang ungkapan padanan untuk lokasi perkataan yang berbeza boleh membosankan. Artikel ini membincangkan penyelesaian ringkas menggunakan sempadan perkataan.
Menggunakan Sempadan Perkataan
Sempadan perkataan, dilambangkan dengan b, menunjukkan permulaan atau penghujung perkataan. Dengan memasukkan b ke dalam corak regex, kita boleh memadankan perkataan yang dikelilingi oleh aksara bukan perkataan. Kod berikut menunjukkan perkara ini:
match_string = r'\b' + word + r'\b' # Or Python 3.7+ only versions: match_string = r'\b{}\b'.format(word) match_string = rf'\b{word}\b'
Corak regex ini akan memadankan "perkataan" sebagai keseluruhan perkataan, tanpa mengira kedudukannya dalam rentetan.
Memadankan Berbilang Perkataan
Jika berbilang perkataan perlu dipadankan sebagai keseluruhan perkataan, kita boleh menggunakan senarai perkataan dan mencipta corak seperti ini:
match_string = r'\b(?:{})\b'.format('|'.join(words)) # Or Python 3.7+ only version: match_string = rf'\b(?:{"|".join(words)})\b'
Dalam corak ini, perkataan disertakan dalam kumpulan yang tidak menangkap, memastikan bahawa hanya keseluruhan perkataan dipadankan.
Pertimbangan Sempadan
Jika "perkataan" yang hendak dipadankan mengandungi aksara khas, ia perlu dilepaskan sebelum menggunakannya dalam corak regex menggunakan re.escape().
Untuk perkataan yang bermula atau berakhir dengan aksara khas, sempadan perkataan yang tidak jelas (?
Kesimpulannya, menggunakan sempadan perkataan memberikan kemudahan cara untuk memadankan keseluruhan perkataan dalam rentetan, menghapuskan keperluan untuk berbilang ungkapan padanan berdasarkan lokasi perkataan.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Menggunakan Ungkapan Biasa untuk Memadankan Keseluruhan Perkataan dalam Rentetan?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!