Rumah > Artikel > pembangunan bahagian belakang > Bagaimana untuk mengekstrak teks antara rentetan dengan ungkapan biasa dalam Python?
Mengekstrak Teks Antara Rentetan Menggunakan Ungkapan Biasa
Dalam Python, anda boleh memanfaatkan ungkapan biasa untuk mengekstrak teks yang terletak di antara dua rentetan tertentu dalam rentetan yang lebih besar rentetan. Pertimbangkan contoh berikut:
"Part 1. Part 2. Part 3 then more text"
Objektif anda adalah untuk mengasingkan teks antara "Bahagian 1" dan "Bahagian 3," iaitu ". Bahagian 2. ". Untuk mencapai matlamat ini, anda boleh menggunakan fungsi re.search():
<code class="python">import re s = 'Part 1. Part 2. Part 3 then more text' match = re.search(r'Part 1\.(.*?)Part 3', s) if match: text_between = match.group(1) print(text_between)</code>
Dalam kes ini, ungkapan biasa r'Bahagian 1.(.*?)Bahagian 3' menetapkan ".*?" sebagai kumpulan tangkap. "?" memastikan kumpulan ini tidak tamak, bermakna ia akan menangkap rentetan terpendek mungkin yang memenuhi ungkapan biasa. .* sepadan dengan mana-mana watak dan . mewakili mana-mana aksara kecuali baris baharu.
Jika wujud berbilang kejadian, anda boleh menggunakan re.findall() sebaliknya:
<code class="python">matches = re.findall(r'Part 1(.*?)Part 3', s) for match in matches: print(match)</code>
Atas ialah kandungan terperinci Bagaimana untuk mengekstrak teks antara rentetan dengan ungkapan biasa dalam Python?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!