Rumah > Artikel > pembangunan bahagian belakang > Cara menggunakan ungkapan biasa Python untuk pembahagian perkataan
Ekspresi biasa Python ialah alat berkuasa yang boleh digunakan untuk memproses data teks. Dalam pemprosesan bahasa semula jadi, pembahagian perkataan adalah tugas penting, yang memisahkan teks kepada perkataan individu.
Dalam Python, kita boleh menggunakan ungkapan biasa untuk menyelesaikan tugas pembahagian perkataan. Berikut akan menggunakan Python3 sebagai contoh untuk memperkenalkan cara menggunakan ungkapan biasa untuk pembahagian perkataan.
Modul semula ialah modul ekspresi biasa terbina dalam Python, yang perlu diimport terlebih dahulu.
import re
Seterusnya, kami mentakrifkan data teks yang mengandungi ayat, contohnya:
text = "Python正则表达式是一种强大的工具,可用于处理文本数据。"
Kita perlu mentakrifkan ungkapan biasa yang boleh memisahkan teks kepada perkataan individu. Secara umum, perkataan terdiri daripada huruf dan nombor dan boleh diwakili menggunakan set aksara dalam ungkapan biasa.
pattern = r'w+'
Antaranya, w bermaksud memadankan huruf, nombor dan garis bawah, dan + bermaksud memadankan satu atau lebih.
Seterusnya, kami menggunakan fungsi findall dalam modul semula untuk melaksanakan pembahagian perkataan pada data teks. Fungsi ini mencari semua subrentetan yang sepadan dengan ungkapan biasa dan mengembalikan senarai.
result = re.findall(pattern, text) print(result)
Hasil keluarannya ialah:
['Python', '正则表达式', '是', '一种', '强大', '的', '工具', '可用', '于', '处理', '文本', '数据']
Dalam aplikasi praktikal, untuk mengelakkan masalah padanan yang disebabkan oleh bahagian atas dan huruf kecil, secara amnya Tukar semua perkataan kepada huruf kecil. Kita boleh menukar perkataan kepada huruf kecil menggunakan fungsi str.lower dalam Python.
result = [word.lower() for word in result] print(result)
Hasil output ialah:
['Python', '正则表达式', '是', '一种', '强大', '的', '工具', '可用', '于', '处理', '文本', '数据']
Untuk teks yang mengandungi tanda baca, kaedah di atas mungkin tidak menyelesaikan tugas perkataan dengan sempurna pembahagian. Kami memerlukan pemprosesan lanjut, seperti mengalih keluar tanda baca, mengalih keluar perkataan henti, dsb. Berikut ialah contoh ringkas untuk mengalih keluar tanda baca.
text = "Python正则表达式是一种强大的工具,可用于处理文本数据。" text = re.sub(r'[^ws]', '', text) result = re.findall(pattern, text.lower()) print(result)
Outputnya ialah:
['Python', '正则表达式', '是', '一种', '强大', '的', '工具', '可用', '于', '处理', '文本', '数据']
Dalam contoh ini, kami mula-mula mengalih keluar semua tanda baca menggunakan fungsi re.sub. Kemudian, gunakan kaedah yang diperkenalkan sebelum ini untuk pembahagian perkataan, dan akhirnya menukar perkataan kepada huruf kecil. Output adalah sama seperti contoh sebelumnya.
Ringkasnya, menggunakan ungkapan biasa Python untuk pembahagian perkataan tidaklah rumit, tetapi ia mungkin memerlukan pemprosesan lanjut dalam aplikasi praktikal.
Atas ialah kandungan terperinci Cara menggunakan ungkapan biasa Python untuk pembahagian perkataan. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!