Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Cara menggunakan ungkapan biasa Python untuk pemprosesan bahasa semula jadi

Cara menggunakan ungkapan biasa Python untuk pemprosesan bahasa semula jadi

王林
王林asal
2023-06-22 15:28:40871semak imbas

Pemprosesan Bahasa Asli (NLP) ialah satu bidang sains komputer yang melibatkan cara komputer memproses dan memahami bahasa manusia. Python ialah bahasa pengaturcaraan yang digunakan secara meluas dengan set alat dan perpustakaan yang kaya untuk pemprosesan bahasa semula jadi. Antaranya, ungkapan biasa adalah alat yang berkuasa dan digunakan secara meluas dalam pemprosesan bahasa semula jadi. Artikel ini akan memperkenalkan cara menggunakan ungkapan biasa Python untuk pemprosesan bahasa semula jadi.

1. Gambaran keseluruhan ungkapan biasa

Ungkapan biasa ialah corak yang digunakan untuk memadankan rentetan. Modul semula digunakan dalam Python untuk menyediakan sokongan ekspresi biasa. Dalam ungkapan biasa, terdapat beberapa aksara khas yang boleh digunakan untuk mewakili corak yang berbeza, seperti:

  1. ".": digunakan untuk memadankan mana-mana aksara.
  2. "^": digunakan untuk memadankan permulaan rentetan.
  3. "$": digunakan untuk memadankan hujung rentetan.
  4. "+": digunakan untuk memadankan satu atau lebih aksara sebelumnya.
  5. "*": digunakan untuk memadankan sifar atau lebih aksara sebelumnya.
  6. "?": digunakan untuk memadankan sifar atau satu aksara sebelumnya.

Watak istimewa ini boleh digunakan dengan huruf, nombor, ruang dan aksara lain untuk membentuk corak padanan yang kompleks.

2. Penggunaan asas ungkapan biasa Python

Dalam Python, gunakan modul semula untuk menyediakan fungsi ungkapan biasa. Berikut ialah contoh mudah untuk menyemak sama ada rentetan yang diberikan mengandungi nombor:

import re

# 匹配数字
pattern = 'd+'
result = re.search(pattern, 'hello 123 world')
if result:
    print('包含数字')
else:
    print('不包含数字')

Output:

包含数字

Dalam contoh ini, fungsi re.search() digunakan untuk mencari rentetan Carian yang diberikan rentetan untuk rentetan yang sepadan dengan corak yang ditentukan. Jika rentetan sepadan ditemui, fungsi mengembalikan objek MatchObject, jika tidak ia mengembalikan Tiada.

3. Penggunaan lanjutan ungkapan biasa Python

Dalam pemprosesan bahasa semula jadi, ungkapan biasa sering digunakan untuk tugas seperti penandaan sebahagian daripada pertuturan, pengecaman entiti dan pembahagian perkataan. Berikut ialah beberapa corak ungkapan biasa yang biasa digunakan dalam pemprosesan bahasa semula jadi dan penggunaannya:

  1. Perkataan yang sepadan

Ungkapan biasa boleh digunakan untuk memadankan perkataan. Sebagai contoh, kita boleh menggunakan " " untuk memadankan sempadan perkataan dan "w+" untuk memadankan satu atau lebih aksara perkataan, dengan itu memadankan perkataan:

import re

# 匹配单词
pattern = r'w+'
result = re.findall(pattern, 'hello world, how are you?')
print(result)

Output:

['hello', 'world', 'how', 'are', 'you']

Dalam contoh ini, Gunakan re.findall() berfungsi untuk mencari rentetan yang diberikan untuk semua rentetan yang sepadan dengan corak yang ditentukan dan mengembalikannya sebagai senarai.

  1. Padankan alamat e-mel

Ungkapan biasa juga boleh digunakan untuk memadankan alamat e-mel. Sebagai contoh, kita boleh menggunakan "w+@w+.w+" untuk memadankan format asas alamat e-mel:

import re

# 匹配邮箱地址
pattern = r'w+@w+.w+'
result = re.findall(pattern, 'my email is example@gmail.com')
print(result)

Output:

['example@gmail.com']

Dalam contoh ini, gunakan ungkapan biasa "w+@w+ .w+ "padanan dengan satu atau lebih aksara perkataan, diikuti dengan simbol "@", diikuti oleh satu atau lebih aksara perkataan, diikuti dengan simbol ".", dan akhirnya satu atau lebih aksara perkataan.

  1. Padankan Bahasa Cina

Ungkapan biasa juga boleh digunakan untuk memadankan bahasa Cina. Sebagai contoh, kita boleh menggunakan "[u4e00-u9fa5]+" untuk memadankan satu atau lebih aksara Cina:

import re

# 匹配中文
pattern = r'[u4e00-u9fa5]+'
result = re.findall(pattern, '中国人民是伟大的')
print(result)

Output:

['中国人民是伟大的']

Dalam contoh ini, gunakan ungkapan biasa "[u4e00- u9fa5]+" sepadan dengan satu atau lebih aksara Cina.

4. Kesimpulan

Ekspresi biasa Python adalah salah satu alat yang sangat diperlukan dalam pemprosesan bahasa semula jadi. Ia boleh digunakan untuk tugasan seperti padanan rentetan, penandaan sebahagian daripada pertuturan, pengecaman entiti, pembahagian perkataan, dsb., dan memainkan peranan penting dalam pemprosesan teks. Artikel ini memperkenalkan penggunaan asas dan lanjutan ungkapan biasa Python, dengan harapan dapat memberikan sedikit bantuan untuk aplikasi anda dalam pemprosesan bahasa semula jadi.

Atas ialah kandungan terperinci Cara menggunakan ungkapan biasa Python untuk pemprosesan bahasa semula jadi. 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