Memahami Regex dalam Python: Contoh Praktikal
Jan 04, 2025 am 01:20 AMPengenalan
Ekspresi biasa, biasanya dikenali sebagai regex, ialah alat yang berkuasa untuk padanan corak dan manipulasi teks. Mereka membenarkan pembangun mencari, memadankan dan memanipulasi rentetan dengan ketepatan. Dalam catatan blog ini, kami akan meneroka cara regex digunakan dalam Python melalui contoh praktikal daripada fungsi pengesahan pelanggan.
Konteks
Pertimbangkan senario di mana kami perlu mengesahkan maklumat pelanggan, khususnya nama pertama, nama keluarga dan nombor mudah alih mereka. Coretan kod berikut menunjukkan cara regex digunakan untuk mengesahkan nombor mudah alih dalam kelas Python:
from sqlalchemy.orm import validates import re class Customer: @validates('first_name', 'last_name', 'mobile') def validate(self, key, value): if key == 'first_name' or key == 'last_name': if len(value) == 0: raise ValueError(f'Server validation error: No {"first name" if key == "first_name" else "last name"}') elif key == 'mobile': mobile = r"((([\(]?[0-9]{3,4}[\)]\s?)|([0-9]{3,4}[\-]))[0-9]{3,4}[\-][0-9]{4})|([0-9]{10,12})" mobile_regex = re.compile(mobile) if not mobile_regex.fullmatch(value): raise ValueError('Server validation error: Invalid mobile number') return value
Memecahkan Regex
Dalam kaedah pengesahan, kami menggunakan regex untuk memastikan nombor mudah alih yang diberikan oleh pelanggan mematuhi format tertentu. Mari kita pecahkan corak regex yang digunakan:
mobile = r"((([\(]?[0-9]{3,4}[\)]\s?)|([0-9]{3,4}[\-]))[0-9]{3,4}[\-][0-9]{4})|([0-9]{10,12})"
Kurungan dan Tanda Sempang:
([(]?[0-9]{3,4}[)]s?): Bahagian regex ini sepadan dengan kurungan pembuka pilihan (, diikuti dengan 3 atau 4 digit, kurungan penutup pilihan ), dan pilihan ruang.
([0-9]{3,4}[-]): Bahagian ini sepadan dengan 3 atau 4 digit diikuti dengan tanda sempang -.
Nombor Utama:
[0-9]{3,4}[-][0-9]{4}: Bahagian ini sepadan dengan 3 atau 4 digit, tanda sempang dan kemudian 4 digit.
Format Alternatif:
([0-9]{10,12}):
Bahagian ini sepadan dengan jujukan 10 hingga 12 digit, membolehkan format nombor mudah alih yang lebih padat tanpa pemisah.
Menggunakan Regex untuk Pengesahan
Corak regex disusun menggunakan re.compile(mobile), dan kaedah padanan penuh digunakan untuk menyemak sama ada keseluruhan rentetan sepadan dengan corak:
mobile_regex = re.compile(mobile) if not mobile_regex.fullmatch(value): raise ValueError('Server validation error: Invalid mobile number')
Jika nombor mudah alih tidak sepadan dengan corak regex, ValueError dinaikkan, menunjukkan nombor mudah alih tidak sah.
Kesimpulan
Regex ialah alat serba boleh untuk pengesahan dan manipulasi rentetan. Dalam contoh ini, kami menggunakan regex untuk mengesahkan nombor mudah alih, memastikan ia mematuhi format tertentu. Dengan memahami dan menggunakan regex, pembangun boleh melakukan operasi rentetan yang kompleks dengan mudah dan tepat.
Sama ada anda mengesahkan input pengguna, mencari corak dalam teks atau melakukan manipulasi teks, regex menyediakan penyelesaian yang mantap untuk keperluan anda. Selamat mengekod!
Atas ialah kandungan terperinci Memahami Regex dalam Python: Contoh Praktikal. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Artikel Panas

Alat panas Tag

Artikel Panas

Tag artikel panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas

Bagaimana saya menggunakan sup yang indah untuk menghuraikan html?

Cara Menggunakan Python untuk Mencari Pengagihan Zipf Fail Teks

Cara Bekerja Dengan Dokumen PDF Menggunakan Python

Cara Cache Menggunakan Redis dalam Aplikasi Django

Bagaimana untuk melakukan pembelajaran mendalam dengan Tensorflow atau Pytorch?

Memperkenalkan Toolkit Bahasa Alam (NLTK)
