Rumah >pembangunan bahagian belakang >Tutorial Python >Bagaimana untuk melaksanakan ungkapan biasa dalam Python

Bagaimana untuk melaksanakan ungkapan biasa dalam Python

WBOY
WBOYke hadapan
2023-05-11 17:40:061480semak imbas

Ekspresi biasa Python

Ekspresi biasa itu sendiri adalah pengetahuan bebas daripada bahasa pengaturcaraan, tetapi ia bergantung pada bahasa pengaturcaraan Pada asasnya, semua bahasa pengaturcaraan yang kami gunakan sudah tentu ada adalah beberapa perbezaan dalam pelaksanaannya Ada yang menyokong lebih banyak fungsi dan ada yang kurang menyokong.

Oleh kerana ungkapan biasa ialah alat yang digunakan secara meluas dalam amalan, saya fikir adalah tidak boleh dipercayai untuk mempelajarinya tanpa bahasa.

Pengenalan kepada fungsi ekspresi biasa

Gambarajah perhubungan API utama ungkapan biasa

Bagaimana untuk melaksanakan ungkapan biasa dalam Python

Gambar ini adalah milik saya Secara peribadi, Saya rasa saya pada asasnya telah menjelaskan hubungan antara fungsi di sini Fungsinya ialah:

  • padanan pada ungkapan biasa dari permulaan teks dan kembalikan objek yang dipadankan Tiada

  • carian padankan ungkapan biasa dalam keseluruhan teks dan kembalikan objek padanan pertama.

  • sub menggunakan ungkapan biasa untuk penggantian teks (fungsi ungkapan biasa: cari dan ganti)

  • findall sepadan dengan ungkapan biasa daripada keseluruhan teks ungkapan yang mengembalikan semua hasil yang sepadan sebagai senarai.

  • pencari sepadan dengan ungkapan biasa daripada keseluruhan teks, mengembalikan semua hasil yang sepadan sebagai lelaran.

  • split menggunakan ungkapan biasa untuk memisahkan teks

Seperti yang anda lihat di sini, ·re· , Kemudian re.compile terdapat banyak fungsi dengan nama yang sama di bawah. Di bawah modul ·re· secara rasmi disediakan fungsi yang mudah digunakan. re.compileJadi, untuk kandungan berikut, saya pada asasnya menggunakan dan kaedah di bawah untuk mencapainya. re.compile

fungsi re.compile

fungsi digunakan untuk menyusun ungkapan biasa dan menjana objek ungkapan biasa (Corak) untuk compile dan match() dan lain-lain penggunaan fungsi . search()

Sintaks:

re.compile(pattern[, flags])

  • corak: ungkapan biasa dalam bentuk rentetan

  • bendera pilihan, menunjukkan corak padanan, seperti mengabaikan kes, mod berbilang baris, dsb. Parameter khusus ialah:

    • semula.Saya mengabaikan kes

    • semula mod berbilang baris

    • re.S ialah '.' dan mana-mana aksara termasuk baris baharu ('.' tidak termasuk baris baharu)

    • semula .U mewakili set aksara khas w, W, b, B, d, D, s, S dan bergantung pada pangkalan data atribut aksara Unicode

    • re.X untuk meningkatkan kebolehbacaan jantina, abaikan ruang dan komen mengikuti ‘#&rsquo 🎜>Seterusnya kita akan mempelajari secara beransur-ansur kandungan ungkapan biasa, yang sangat menarik! Menarik dan Teruja!

    • Berikut ialah contoh templat yang akan digunakan sepanjang masa Templat ini adalah perkara paling penting dalam blog ini, dan kandungan seterusnya akan dikembangkan berdasarkannya. Jadi, sila fahami dengan baik.
import re

s = 'runoob 123 google 456'
result1 = re.findall(r'\d+', s)

pattern = re.compile(r'\d+') # 查找数字
result2 = pattern.findall(s)
result3 = pattern.findall(s, 0, 20)


print(result1)
print(result2)
print(result3)


"""
output:
[‘123', ‘456']
[‘123', ‘456']
[‘123', ‘45']
"""

Nota:

Ungkapan biasa regexp akan menggunakan awalan

sebelum memulakan aksara melarikan diri dalam ungkapan menjejaskan kebolehbacaan keseluruhan. Ekspresi biasa Python termasuk banyak kaedah yang sangat mudah digunakan, tetapi saya tidak akan memperkenalkannya terlalu banyak di sini. Kami akan sentiasa menggunakan corak di atas, kerana kaedah yang mudah digunakan itu hanyalah sejenis pengkapsulan, dan pembelajaran menggunakan kaedah asas ini secara semula jadi akan membawa kepada yang lain.

Objek yang sepadan boleh mendapatkan maklumat tentang ungkapan biasa dan sifatnya yang paling penting ialah: Bagaimana untuk melaksanakan ungkapan biasa dalam Python

Atas ialah kandungan terperinci Bagaimana untuk melaksanakan ungkapan biasa dalam Python. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:yisu.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam