Rumah >pembangunan bahagian belakang >Tutorial Python >Regex lwn. `isdigit()` dalam Python: Kaedah Mana Yang Terbaik Mengeluarkan Nombor daripada Rentetan?
Mengekstrak Nombor daripada Rentetan dalam Python: Kaedah Ungkapan Biasa lwn. Isdigit()
Untuk mengekstrak nombor dengan cekap daripada rentetan, pembangun membahaskan penggunaan ungkapan biasa (regex) terhadap kaedah isdigit(). Artikel ini meneroka kedua-dua pendekatan dan memberikan perbandingan yang jelas.
Ungkapan Biasa
Ungkapan biasa ialah alat yang berkuasa untuk memadankan corak dalam teks. Untuk mengekstrak nombor, kita boleh menggunakan regex berikut:
r'\d+'
regex ini sepadan dengan satu atau lebih digit dalam turutan. Contohnya, gunakannya pada rentetan "hello 12 hi 89" menggunakan re.findall():
>>> re.findall(r'\d+', "hello 12 hi 89") ['12', '89']
Kaedah Isdigit()
The isdigit() method ialah fungsi terbina dalam Python yang mengembalikan True jika rentetan hanya mengandungi digit. Untuk menggunakannya untuk pengekstrakan nombor, kita boleh melingkari aksara rentetan, menyemak setiap satu dengan isdigit().
Walau bagaimanapun, kaedah ini mempunyai had:
Perbandingan
Secara amnya, ungkapan biasa diutamakan untuk mengekstrak nombor daripada rentetan. Mereka menawarkan kelebihan berikut:
Kesimpulan
Walaupun kaedah isdigit() boleh digunakan untuk pengekstrakan nombor, ungkapan biasa biasanya lebih baik pilihan kerana kecekapan, fleksibiliti, dan ringkasnya. Dengan memanfaatkan ungkapan biasa, pembangun boleh mengekstrak nombor daripada rentetan dengan tepat dan cekap.
Atas ialah kandungan terperinci Regex lwn. `isdigit()` dalam Python: Kaedah Mana Yang Terbaik Mengeluarkan Nombor daripada Rentetan?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!