PHP: expresiones regulares simples para que coincida con la longitud?
-
19-09-2019 - |
Pregunta
Estoy creando un sistema de registro que debe comprobar el nombre / etc pasar con Regex (y prefieren), lo que tengo hasta ahora es:
//Check so numbers aren't first, such as 00foobar
preg_match('/^(?!\d)[a-z0-9]+$/iD',$usrname);
//Just simple check
preg_match('/^[a-zA-Z0-9]+$/',$psword);
Pero tengo que hacer cosas estúpidas en instrucciones IF como:
if strlen($psword) > 30 || if (strlen($psword) < 4) ....
¿Cómo me impliment la comprobación de longitud en mis dos declaraciones de expresiones regulares originales? Esto me haría tan feliz ..
Solución
mismo pero usando el \ d w y \ por palabra y los dígitos, pero también es posible que desee incluir símbolos básicos como %!?/ ... etc...
preg_match('/^[\w\d]{4,30}$/',$psword);
el {n,v}
validaría para n mínimo y V elementos máximo antes.
como A{2,3}
validaría para AA
y AAA
. puedes echar un vistazo no más referencias
En la misma forma si quieres sólo para establecer el mínimo de {n,}
patern lo haría. Por ejemplo:
preg_match('/^[\w\d]{4,}$/',$psword);
Otros consejos
Creo que esto debería hacer el truco:
preg_match ( '/ ^ [a-zA-Z0-9] {4,30} $ /', $ PSWORD);