webForumDet fria alternativet

regex: strong password

JavaScriptur Javascript

7 svar · 427 visningar · startad av Dino

Medlem sedan sep. 20011 914 inlägg
Frågan#1

Har ett expression som är taget från regexlib och modifierat för mina behov. Har testat det i två regex editorer och det fungerar fint där. Men det vill inte fungera i javascript. Någon som vet varför?

<html><head>
<script language="javascript">
function checkPassword()
{
   var pass = document.getElementById("tbContent").value;
   if (!new RegExp("^(?=.*[a-zA-Z])(?=.*[0-9])(?=.*[#!=_])(?!.*[^a-zA-Z0-9#!=_]).{6,12}$").test(pass)){
      alert("Bad password: " + pass);
   }else{ 
      alert("Good password: " + pass);
   }
}
</script>
</head><body>
<textarea id="tbContent" rows="15" cols="60"></textarea>
<input type="button" value="Testa lösenord" onclick="checkPassword()" />
</body></html>
Medlem sedan sep. 20011 914 inlägg
#2

Kanske skall säga att jag vill att den skall kolla så att det finns minst en bokstav, minst en siffra och minst ett specialtecken och alltihop måste vara mellan 6-12 tecken.

Testade lite och såg att den faktiskt accepterar:
!2aaaaaaa

Men inte:
aaaaaaa!2

???

Medlem sedan juni 20008 205 inlägg
#3

För mig funkar det?

Medlem sedan sep. 20011 914 inlägg
#4

Hmm, verkar ha med webbläsaren att göra. Testade nu i Firefox och det fungerade fint, men inte i IE7. Var det Firefox du använde?

Medlem sedan juni 20008 205 inlägg
#5

Japp, det var det.

Medlem sedan sep. 20011 914 inlägg
#6

Ok, postar vidare till Microsoft för att försöka få reda på om det är någon bugg eller "by design".

Iaf, om det är någon som har ett expression som fungerar som ovan skall fast utan "assertions" (?=, ?!...) så är jag tacksam.

Medlem sedan juli 2003465 inlägg
#7

Använder inte IE document.all istället för document.getElementById?
Testa att skriva:

var pass = document.all ? document.all["tbContent"].value : document.getElementById("tbContent").value;
Medlem sedan juni 20014 421 inlägg
#8

Nej.
Eller; man kan använda det också i IE, men IE stödjer getElementById sedan länge.

142 ms totalt · 3 externa anrop · v20260731065814-full.55e59744
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
138 ms — hämta tråd, inlägg och bilagor (db)