Rumah > Artikel > pembangunan bahagian belakang > Bagaimana untuk mengekstrak teks yang disertakan dalam kurungan menggunakan ungkapan biasa?
Dapatkan Teks Yang Dikurung Dalam Kurungan Menggunakan Ungkapan Biasa
Dalam senario di mana anda perlu mengasingkan teks dalam kurungan, ungkapan biasa menawarkan alat yang berkuasa. Artikel ini menyelidiki topik, menunjukkan cara mengekstrak teks sedemikian dengan berkesan menggunakan pendekatan regex.
Satu kes penggunaan lazim ditunjukkan oleh rentetan berikut:
u'abcde(date=\'2/xc2/xb2\',time=\'/case/test.png\')'
Objektifnya adalah untuk mengekstrak kandungan yang disertakan dalam kurungan, iaitu:
date=\'2/xc2/xb2\',time=\'/case/test.png\'
Walaupun kejadian tertentu ini mungkin kelihatan mudah untuk dapatkan semula secara manual, pertimbangkan senario yang lebih kompleks dengan kurungan bersarang atau berbilang peringkat sarang. Ungkapan biasa memberikan penyelesaian yang elegan untuk kes sedemikian.
Untuk mencapai pengekstrakan ini menggunakan regex, anda boleh menggunakan kod berikut:
regex = re.compile("\(.*?\)") match = regex.search(s) print(match.group())
Kod ini secara berkesan mengenal pasti mana-mana teks yang disertakan dalam kurungan dan menetapkan ia kepada pembolehubah padanan. Kaedah match.group() kemudiannya digunakan untuk mendapatkan semula padanan itu sendiri, iaitu teks dalam kurungan.
Terutamanya, untuk senario mudah ini, anda juga boleh menggunakan pendekatan yang lebih mudah berikut:
s[s.find("(")+1:s.find(")")]
Pendekatan alternatif ini mengelakkan keperluan untuk ungkapan biasa dan mungkin mencukupi untuk kes penggunaan asas. Walau bagaimanapun, ungkapan biasa menawarkan penyelesaian serba boleh untuk keperluan pengekstrakan yang lebih rumit.
Atas ialah kandungan terperinci Bagaimana untuk mengekstrak teks yang disertakan dalam kurungan menggunakan ungkapan biasa?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!