Dalam pembangunan web, selalunya perlu melakukan sekatan format atau semakan format pada data ungkapan biasa PHP adalah salah satu alat yang berkuasa untuk operasi tersebut. Dalam artikel ini, kami akan menerangkan melalui pertempuran sebenar dan mengajar anda cara menggunakan ungkapan biasa PHP untuk memadankan nama pengguna.
1. Keperluan nama pengguna
Pertama sekali, kami perlu menjelaskan keperluan nama pengguna supaya kami mengetahui jenis ungkapan biasa yang perlu digunakan untuk pemadanan. Biasanya, keperluan nama pengguna adalah seperti berikut:
2. Tulis ungkapan biasa
Mari kita analisa ungkapan biasa yang perlu digunakan untuk setiap keperluan:
terdiri daripada huruf, nombor atau garis bawah .1. Memandangkan terdapat banyak set aksara yang perlu dikecualikan, kami boleh menggunakan julat pengekodan Unikod untuk mewakili set aksara yang perlu dikecualikan: [u4e00-u9fa5uFE30-uFFA0u3000-u303F]|[s~!@#$ %^&*()_ +={}[]|;:'",.<>/?·!¥......()—""[],;':",. ,? ]). ~!@#$%^&*()_+={}[]|;:'",.<>/?·!¥……()—《》【】、;‘:“,。、?]。最终得到:(?=D)[0-9a-zA-Z_]{6,20}(?![u4e00-u9fa5uFE30-uFFA0u3000-u303F]|[s
3. Gunakan ungkapan biasa untuk memadankan
Sekarang kita telah menulis ungkapan biasa, kita boleh menggunakan fungsi preg_match PHP untuk dipadankan. Berikut ialah contoh kod:
function matchUsername($username) { $pattern = '/^(?=D)[0-9a-zA-Z_]{6,20}(?![u4e00-u9fa5uFE30-uFFA0u3000-u303F]|[s`~!@#$%^&*()_+={}[]|\;:'",.<>/?·!¥……()—《》【】、;‘:“,。、?])$/'; if(preg_match($pattern, $username)) { return true; } return false; } $username1 = 'abcde'; $username2 = 'abcd@e'; $username3 = '1abcde'; $username4 = '123456789abcdefghi'; $username5 = '张三'; $username6 = 'abcdef张三'; var_dump(matchUsername($username1)); // true var_dump(matchUsername($username2)); // false var_dump(matchUsername($username3)); // false var_dump(matchUsername($username4)); // false var_dump(matchUsername($username5)); // false var_dump(matchUsername($username6)); // false
Dalam kod, kami mentakrifkan fungsi matchUsername untuk pemadanan dan menggunakan kes ujian untuk mengesahkan setiap satu. Selepas menjalankan kod, anda boleh melihat bahawa kecuali $username1, kes ujian yang lain gagal melepasi perlawanan.
Setakat ini, kami telah menerangkan cara menggunakan ungkapan biasa PHP untuk memadankan nama pengguna melalui pertempuran sebenar. Kami berharap ia akan membantu pemula.
Atas ialah kandungan terperinci Ungkapan biasa PHP dalam tindakan: memadankan nama pengguna. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!