Sto cercando di fare un match di una stringa che potrebbe contenere caratteri come questi:
~!@#$%^*()_+=-`{}[]|\/:;',.?
Il problema è che usando il metodo match() quando gli passo alcuni di questi caratteri è come se il javascript andasse in blocco. In particolare parlo di caratteri come ? ( ) [ ]
Io faccio così:
var strCharAmmessi="~!@#$%^*()_+=-`{}[]|\/:;',.?ABCDEFGHILMNOPQRSTUVZJKWYabcdefghilmnopqrstu vzjkwy0123456789";
//controlla se i caratteri contenuti nella nuova password sono tra quelli ammessi
function ctrl_caratteri(pswCtrl){
//passa per ogni carattere della password e lo confronta con i caratteri ammessi
for(i=0;i<pswCtrl.length;i++){
//fa il confronto carattere per carattere
var risultato=strCharAmmessi.match(pswCtrl[i]);
alert(risultato);
//se uno dei caratteri della password risulta non presente nella stringa di controllo
//allora ritorna un false
if(risultato==null){
return false;
}
}
//si manifesta nel caso tutti i caratteri della password sono presenti nella stringa di controllo
return true;
}
Funziona tutto bene se i caratteri sono altri, tipo ! ^ # @ mentre con quelli che ho citato sopra non mi restituisce ne null ne niente. E' come se proprio quei caratteri non li digerisce.
Qualcuno ha un'idea?

Rispondi quotando
ragazzi mi dovete aiutare...io continuo a fare ricerche in giro, ma mi dovete aiutare. Ho usato anche indexOf() usando -1 invece che null come risultato da confrontare.
