Domanda

Sto creando un sistema di registrazione che ha bisogno di controllare il nome / passano ecc REGEX (e preferiscono), quello che ho finora è:

//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);

Ma devo fare cose stupide in affermazioni se come:

if strlen($psword) > 30 || if (strlen($psword) < 4) ....

Come potrei impliment il controllo di lunghezza nelle mie due prospetti originali espressioni regolari? Questo mi farebbe molto felice ..

È stato utile?

Soluzione

stesso, ma utilizzando il d \ w e \ per parola e cifre, ma si potrebbe voler includere anche i simboli di base come %!?/ ... etc...

preg_match('/^[\w\d]{4,30}$/',$psword);

il {n,v} sarebbe convalidate per n minimo e massimo prima v elementi.

come A{2,3} sarebbe convalidare per AA e AAA. si può prendere un ci per ulteriori riferimenti

Nella stessa maniera, se si desidera impostare solo il minimo di patern {n,} lo farebbe. Ad esempio:

preg_match('/^[\w\d]{4,}$/',$psword);

Altri suggerimenti

Credo che questo dovrebbe fare il trucco:

  

preg_match ( '/ ^ [a-zA-Z0-9] {4,30} $ /', $ psword);

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top