Padanan Subrentetan Antara Penanda dalam Python
Apabila bekerja dengan rentetan dalam Python, anda mungkin menghadapi keperluan untuk mengekstrak subrentetan tertentu yang terletak di antara dua penanda yang diketahui. Tugasan ini boleh dicapai menggunakan ungkapan biasa, alat yang berkuasa untuk pemadanan corak.
Penyelesaian Menggunakan Ungkapan Biasa
Untuk mengekstrak subrentetan antara penanda dalam Python, ikuti langkah ini :
Contoh
Pertimbangkan coretan kod berikut:
import re text = 'gfgfdAAA1234ZZZuijjk' m = re.search('AAA(.+?)ZZZ', text) if m: found = m.group(1) # found: '1234'
Dalam contoh ini, teks rentetan mengandungi subrentetan minat, yang terletak di antara penanda "AAA" dan "ZZZ". Menggunakan fungsi re.search(), kami mencari corak 'AAA(. ?)ZZZ'. (. ?)部分匹配零个或更多字符,尽可能短。
Jika corak ditemui, kami mendapatkan semula subrentetan yang dipadankan menggunakan m.group(1) dengan 1 menunjukkan kumpulan penangkapan pertama coraknya. Subrentetan yang diekstrak kemudiannya disimpan dalam pembolehubah yang ditemui.
Sebagai alternatif, anda boleh menggunakan pendekatan berikut:
import re text = 'gfgfdAAA1234ZZZuijjk' try: found = re.search('AAA(.+?)ZZZ', text).group(1) except AttributeError: # AAA, ZZZ not found in the original string found = '' # found: '1234'
Pendekatan ini mengendalikan kes di mana penanda tidak ditemui dalam rentetan asal dengan menyediakan tingkah laku lalai dalam blok kecuali.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mengeluarkan Substrings Antara Penanda dalam Python Menggunakan Ungkapan Biasa?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!