J'ai besoin de regex pour valider une chaîne alphanumérique d'une longueur de 3 à 5 caractères. J'ai essayé de suivre les expressions rationnelles trouvées sur le Web, mais cela n'a même pas bien saisi les caractères alphanumériques.
var myRegxp = /^([a-zA-Z0-9_-]+)$/;
if(myRegxp.test(value) == false)
{
return false;
}
ajoutez {3,5}
à votre expression, ce qui signifie une longueur comprise entre 3 et 5
/^([a-zA-Z0-9_-]){3,5}$/
Il faudrait définir exactement les caractères alphanumériques, mais
/^(\w{3,5})$/
Doit correspondre à n’importe quel chiffre/caractère/_ combinaison de longueur 3-5.
Si vous avez également besoin du tiret, assurez-vous d'y échapper ( ajoutez-le, comme ceci::\-
)
/^([\w\-]{3,5})$/
De plus: ^
anchor signifie que la séquence doit commencer au début de la ligne (chaîne de caractères) et $
qu'elle se termine à la fin de la ligne (chaîne de caractères). Ainsi, votre chaîne value
ne doit contenir rien d'autre, sinon elle ne correspondra pas.
Ce script teste d’abord les chaînes N ayant des caractères de 3 à 5.
Pour multi langue ( arabe , ukrainien ) vous devez utilisez ceci
var regex = /^([a-zA-Z0-9_-\u0600-\u065f\u066a-\u06EF\u06fa-\u06ff\ufb8a\u067e\u0686\u06af\u0750-\u077f\ufb50-\ufbc1\ufbd3-\ufd3f\ufd50-\ufd8f\ufd92-\ufdc7\ufe70-\ufefc\uFDF0-\uFDFD]+){3,5}$/; regex.test('мшефн');
Autrement Le ci-dessous est pour anglais alphannumérique seulement
/^([a-zA-Z0-9_-]){3,5}$/
P.S la dose ci-dessus n'accepte pas les caractères spéciaux
une dernière chose que la dose ci-dessus ne prend pas l’espace comme test, il échouera s’il ya de l’espace si vous voulez de l’espace puis ajoutez-le après le 0-9\s
\s
Et si vous voulez vérifier la longueur de toutes les chaînes, ajoutez point.
var regex = /^([a-zA-Z0-9\s@,!=%$#&_-\u0600-\u065f\u066a-\u06EF\u06fa-\u06ff\ufb8a\u067e\u0686\u06af\u0750-\u077f\ufb50-\ufbc1\ufbd3-\ufd3f\ufd50-\ufd8f\ufd92-\ufdc7\ufe70-\ufefc\uFDF0-\uFDFD]).{1,30}$/;