Ben bunu kullanmak:
/^[a-z_\-\d]+$/i
I \w
kullanarak değilim neden olarak, PHP PCRE Pattern Reference alınan aşağıdaki alıntı, sen \w
kullanılarak olmamalıdır neden açıklamak gerekir Bu durum strong>:
A "word" character is any letter or digit or the underscore character, that is, any character which can be part of a Perl "word". The definition of letters and digits is controlled by PCRE's character tables, and may vary if locale-specific matching is taking place. Örneğin, "fr" (Fransızca) yerelinde, 128 daha büyük bazı karakter kodları aksanlı harfler için kullanılır ve bu \w
ile eşleştirilir. Em>
Eğer yerel hakkında endişe istediğiniz sürece, düz karakter sınıfları yerine \w
steno kullanmak böylece davranış, bu durumda arzu değildir.
(Örneğin 3 için) minimum uzunluğunu belirtmek istiyorsanız:
/^[a-z_\-\d]{3,}$/i
Eğer minimum ve maksimum uzunluğu hem de belirtmek istiyorum (örneğin 2 ve 5) ise:
/^[a-z_\-\d]{2,5}$/i