Rumah >pembangunan bahagian belakang >Tutorial Python >Bagaimanakah Saya Boleh Membahagikan Rentetan kepada Perkataan Menggunakan Berbilang Pembatas dalam Python?

Bagaimanakah Saya Boleh Membahagikan Rentetan kepada Perkataan Menggunakan Berbilang Pembatas dalam Python?

DDD
DDDasal
2024-12-26 20:31:10659semak imbas

How Can I Split a String into Words Using Multiple Delimiters in Python?

Memisahkan Rentetan menjadi Perkataan dengan Pembatas Sempadan Berbilang Kata

Dalam Python, apabila membelah rentetan menjadi perkataan menggunakan str.split(), anda hanya boleh menentukan satu pembatas. Ini boleh menjadi masalah jika anda ingin mempertimbangkan tanda baca serta ruang putih sebagai sempadan perkataan.

Penyelesaian: Menggunakan re.split()

Untuk menangani isu ini, pertimbangkan sebaliknya menggunakan fungsi re.split(). re.split() membolehkan anda menentukan corak sebagai hujah, yang boleh merangkumi pembatas sempadan berbilang perkataan.

Corak boleh dibina menggunakan sintaks berikut:

\W+                  # Match any sequence of non-word characters
|                    # Or
\s+                  # Match any sequence of whitespace characters

Untuk memisahkan rentetan contoh yang diberikan kepada perkataan, termasuk tanda baca, anda boleh menggunakan kod berikut:

>>> import re
>>> re.split(r"\W+|\s+", "Hey, you - what are you doing here!?")
['hey', 'you', 'what', 'are', 'you', 'doing', 'here']

Ungkapan biasa di atas sepadan dengan mana-mana urutan aksara bukan perkataan atau aksara ruang kosong, dengan itu memisahkan rentetan menjadi perkataan dengan berkesan.

Kaedah ini menyediakan cara yang fleksibel dan boleh disesuaikan untuk memisahkan rentetan berdasarkan pelbagai pembatas, memastikan semua perkataan yang berkaitan ditangkap.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Membahagikan Rentetan kepada Perkataan Menggunakan Berbilang Pembatas dalam Python?. 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