Memadankan Berbilang Ungkapan Biasa dalam Python
Fungsi re.search() berguna untuk mencari kejadian pertama corak dalam rentetan . Walau bagaimanapun, jika anda perlu mencari semua padanan dalam teks tertentu, terdapat kaedah yang memenuhi tugas khusus ini.
Satu pilihan ialah re.findall, yang mengembalikan senarai yang mengandungi semua subrentetan yang sepadan dengan corak yang disediakan. Ia sesuai apabila anda ingin mengekstrak dan bekerja dengan padanan individu secara berurutan. Contohnya:
import re text = 'This is a line with matching words: apple, orange and banana.' matches = re.findall(r'apple|orange|banana', text) print(matches) # Output: ['apple', 'orange', 'banana']
Alternatif lain ialah re.finditer, yang menghasilkan objek MatchObject untuk setiap padanan. Objek ini memberikan maklumat terperinci tentang padanan, termasuk kedudukan dan kumpulan yang ditangkap. Ia sering digunakan apabila anda memerlukan kawalan yang lebih terperinci ke atas hasil yang sepadan. Contohnya:
import re text = 'This is a line with matching words: apple, orange and banana. Apples are the best!' for match in re.finditer(r'apple|orange|banana', text): print(match.group()) # Output: 'apple', 'orange', 'banana', 'apple' (last match)
Dengan menggunakan re.findall atau re.finditer, anda boleh mengenal pasti dan mendapatkan semula semua kejadian corak tertentu dalam rentetan dalam Python. Kaedah ini membolehkan anda memproses padanan sebagai koleksi atau mengulanginya untuk analisis yang lebih kompleks.
Atas ialah kandungan terperinci Bagaimana untuk Mencari Semua Padanan Pelbagai Ungkapan Biasa dalam Python?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!