Rumah > Artikel > pembangunan bahagian belakang > Mengapa Python Regex "\d" Memadankan Hanya Digit Tertib Ganjil dalam "12345"?
Digit Padanan Regex: Mendedahkan Sifat Sebenar "d"
Dalam dunia regex Python, kelas watak misterius "d" telah dibangkitkan soalan tentang kelakuan padanannya yang tepat. Mari kita mendalami sifat samarnya.
Dalam rentetan "123", "d" menangkap kedua-dua "1" dan "3" tetapi secara ingin tahu mengecualikan "2". Tingkah laku pelik ini berpunca daripada nuansa halus dalam takrifan "digit."
"d" Python tidak secara eksklusif sepadan dengan digit daripada sistem angka Barat (iaitu, "0-9"). Ia juga merangkumi julat lanjutan kelas aksara Unicode dalam kategori "Digit" atau "Nd." Ini termasuk, contohnya, angka Arab Timur seperti "٠" dan "١".
Oleh itu, apabila memadankan digit dalam ungkapan regex Python, adalah penting untuk mengetahui bahawa "d" menghasilkan jaringan yang lebih luas daripada [0 -9]. Pemahaman bernuansa ini membongkar misteri mengapa, dalam urutan seperti "12345," hanya digit tertib ganjil (iaitu, "1", "3", dan "5") sejajar dengan padanan "d", meninggalkan digit tersusun genap ("2" dan "4") tidak disentuh.
Atas ialah kandungan terperinci Mengapa Python Regex "\d" Memadankan Hanya Digit Tertib Ganjil dalam "12345"?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!