Rumah > pembangunan bahagian belakang > Tutorial Python > Bagaimanakah Saya Boleh Memisahkan Rentetan dengan Berbilang Pembatas dalam Python Menggunakan Ungkapan Biasa?

Bagaimanakah Saya Boleh Memisahkan Rentetan dengan Berbilang Pembatas dalam Python Menggunakan Ungkapan Biasa?

Patricia Arquette
Lepaskan: 2024-12-12 21:08:13
asal
919 orang telah melayarinya

How Can I Split Strings with Multiple Delimiters in Python Using Regular Expressions?

Memisahkan Rentetan dengan Berbilang Pembatas dalam Python

Banyak tugas dalam pengaturcaraan melibatkan memanipulasi rentetan. Apabila bekerja dengan rentetan yang mengandungi berbilang pembatas, seperti koma bertitik dan koma, membahagikannya dengan cekap adalah penting.

Menggunakan Ungkapan Biasa

Satu pendekatan biasa ialah menggunakan ungkapan biasa. Pertimbangkan contoh rentetan:

"b-staged divinylsiloxane-bis-benzocyclobutene [124221-30-3], mesitylene [000108-67-8]; polymerized 1,2-dihydro-2,2,4- trimethyl quinoline [026780-96-1]"
Salin selepas log masuk

Untuk memisahkan rentetan ini dengan sama ada koma bertitik atau koma diikuti dengan ruang, kita boleh menggunakan ungkapan biasa berikut:

'; |, '
Salin selepas log masuk

Corak ini sepadan sama ada koma bertitik atau koma diikuti dengan ruang. Menggunakan fungsi re.split(), kita boleh membelah rentetan seperti berikut:

import re

re.split('; |, ', "b-staged divinylsiloxane-bis-benzocyclobutene [124221-30-3], mesitylene [000108-67-8]; polymerized 1,2-dihydro-2,2,4- trimethyl quinoline [026780-96-1]")
Salin selepas log masuk

Nota: Koma individu tanpa ruang mengekor tidak akan dipisahkan.

Kemas kini: Corak Delimeter Lanjutan

Penyelesaian yang diberikan boleh dilanjutkan lagi untuk memasukkan tambahan pembatas. Contohnya, untuk memisahkan rentetan berikut dengan koma bertitik, koma, asterisk dan baris baharu:

"Beautiful, is; better*than\nugly"
Salin selepas log masuk

Ungkapan biasa akan menjadi:

'; |, |\*|\n'
Salin selepas log masuk

Menggunakan fungsi re.split() seperti sebelum ini:

re.split('; |, |\*|\n', 'Beautiful, is; better*than\nugly')
Salin selepas log masuk

Ini akan menghasilkan hasil pemisahan berikut:

['Beautiful', 'is', 'better', 'than', 'ugly']
Salin selepas log masuk

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Memisahkan Rentetan dengan Berbilang Pembatas dalam Python Menggunakan Ungkapan Biasa?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan