Bagaimana untuk mengalih keluar Aksara Bukan Alphanumeric daripada Rentetan dalam Python?

Barbara Streisand
Lepaskan: 2024-11-05 13:41:02
asal
1032 orang telah melayarinya

How to Remove Non-Alphanumeric Characters from Strings in Python?

Melucutkan Aksara Bukan Abjad Angka daripada Rentetan dalam Python

Python menyediakan berbilang pendekatan untuk mengalih keluar aksara bukan abjad angka daripada rentetan. Berikut adalah beberapa kaedah yang berkesan:

1. Menggunakan Pemahaman Senarai dan str.isalnum():

Buat pemahaman senarai yang berulang melalui setiap aksara dalam rentetan. Gunakan str.isalnum() untuk menyemak sama ada aksara ialah abjad angka, dan kemudian sertakan aksara abjad angka ke dalam rentetan baharu.

<code class="python">cleaned_string = ''.join(ch for ch in string if ch.isalnum())</code>
Salin selepas log masuk

2. Menggunakan penapis() dan str.isalnum():

Gunakan fungsi penapis() untuk mencipta penjana yang hanya menghasilkan aksara alfanumerik daripada rentetan. Kemudian, gabungkan aksara ini ke dalam rentetan baharu.

<code class="python">cleaned_string = ''.join(filter(str.isalnum, string))</code>
Salin selepas log masuk

3. Menggunakan re.sub() dan Ungkapan Biasa:

Buat corak ungkapan biasa yang sepadan dengan semua aksara bukan abjad angka, seperti '[W_] '. Kemudian, gunakan re.sub() untuk menggantikan aksara bukan abjad angka ini dengan rentetan kosong.

<code class="python">import re

cleaned_string = re.sub('[\W_]+', '', string)</code>
Salin selepas log masuk

4. Menggunakan re.sub() dan Ungkapan Biasa Dikompilasi:

Kompilasi corak ungkapan biasa sebagai objek untuk meningkatkan kecekapan untuk operasi berulang.

<code class="python">import re

pattern = re.compile('[\W_]+')
cleaned_string = pattern.sub('', string)</code>
Salin selepas log masuk

Pertimbangan Prestasi :

Menanda aras pelbagai kaedah menggunakan modul timeit Python mendedahkan bahawa menggunakan ungkapan biasa yang disusun dengan re.sub() ialah pendekatan yang paling berkesan untuk rentetan besar.

Atas ialah kandungan terperinci Bagaimana untuk mengalih keluar Aksara Bukan Alphanumeric daripada Rentetan dalam Python?. 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