Corak Regex Menguatkuasakan Aksara Minimum dan Kehadiran Nombor
Ungkapan biasa yang disediakan, "^([a-zA-Z0-9] ) $", memastikan bahawa rentetan mengandungi aksara alfanumerik sahaja. Walau bagaimanapun, ia membenarkan rentetan yang terdiri daripada nombor atau aksara semata-mata. Untuk membetulkannya, kami mencari corak yang mewajibkan kehadiran kedua-dua aksara dan nombor dalam rentetan input.
Penyelesaian Menggunakan Pandangan Positif
Satu pendekatan untuk menangani keperluan ini adalah untuk menggunakan pandangan yang positif. Pandangan yang positif membolehkan anda menegaskan kewujudan subrentetan tertentu dalam corak yang lebih besar tanpa benar-benar sepadan dengannya. Regex berikut menggunakan pandangan ke hadapan yang positif untuk mencapai tingkah laku yang diingini:
^(?=.*[0-9])(?=.*[a-zA-Z])([a-zA-Z0-9]+)$
Mari kita pecahkan corak ini:
Menggunakan corak ini, anda boleh memastikan bahawa mana-mana rentetan input yang sah mengandungi kedua-dua sekurang-kurangnya satu nombor dan satu aksara. Gabungan pandangan positif dan padanan watak membolehkan kami mengesahkan kehadiran kedua-dua elemen sambil tetap mematuhi kekangan alfanumerik.
Atas ialah kandungan terperinci Bagaimana untuk Menguatkuasakan Watak Minimum dan Kehadiran Nombor dengan Regex?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!