Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimana untuk mengekstrak teks yang disertakan dalam kurungan menggunakan ungkapan biasa?

Bagaimana untuk mengekstrak teks yang disertakan dalam kurungan menggunakan ungkapan biasa?

DDD
DDDasal
2024-11-19 05:12:02724semak imbas

How to Extract Text Enclosed Within Parentheses Using Regular Expressions?

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!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn