---
title: "validera med minst 2 siffror"
type: "forum-thread"
url: "https://www.webforum.nu/amne/javascript/108808-validera-med-minst-2-siffror"
topic: "JavaScript"
topic_url: "https://www.webforum.nu/amne/javascript"
author: "HeHo"
published: "2004-08-09T09:12:46.000Z"
updated: "2004-08-09T12:41:08.000Z"
replies: 11
views: 681
page: 1
pages: 1
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/javascript/108808-validera-med-minst-2-siffror"
---

# validera med minst 2 siffror

## #1 — HeHo, 2004-08-09T09:12Z

Jag vill validera ett lösenordsfält  som skall innehålla minst 8 tecken varav 2 tecken måste vara siffror. Hur gör man det smidigast?

Permalänk: https://www.webforum.nu/p/108808

## #2 — dectgap, 2004-08-09T10:45Z

```
<script type="text/javascript">
var str = "abc12tre";
var m = str.match(/\d/g);
if(m.length >= 2)
    alert("Jepp, lösenordet innehåller minst två siffror.");
</script>
```

Permalänk: https://www.webforum.nu/p/1404337

## #3 — Jesper T, 2004-08-09T10:48Z

Skulle behöva något liknande för att kolla att lösenordet innehåller både siffror och bokstäver.
Skall man lägga till \\d\|\\D då eller?

Permalänk: https://www.webforum.nu/p/1404339

## #4 — Jesper T, 2004-08-09T10:52Z

```
\d{1,}|\D{1,}
```

 ?

Permalänk: https://www.webforum.nu/p/1404342

## #5 — dectgap, 2004-08-09T10:58Z

> **Jesper T skrev:**
>
> Skulle behöva något liknande för att kolla att lösenordet innehåller både siffror och bokstäver.
> Skall man lägga till (^/d) då eller?

Vilka tecken ska vara tillåtna - bara bokstäver (a-z, A-Z) och siffror (0-9)?
I så fall kan du skriva:

```
<script type="text/javascript">
var str = "abcd1234";
if(/\d/.test(str) && /[a-z]/i.test(str) && /^[\da-z]{8,}/i.test(str))
    alert("Lösenordet innehåller minst en siffra, minst en bokstav och är minst 8 tecken långt");
</script>
```

Först kollar en regexp om det finns några siffror med i lösenordet, sen kollas det om det finns någon bokstav med i lösenordet och sist kollas det att lösenordet endast innehåller siffror och bokstäver, och dessutom att det är minst åtta tecken långt.

Det kan förmodligen skrivas på något smidigare sätt, men jag skyller på värmen - och blomsterflugorna :)

Permalänk: https://www.webforum.nu/p/1404344

## #6 — Jesper T, 2004-08-09T11:03Z

Ok, vad bra. 
Detta verkar också funka.

```
<script type="text/javascript">
var str = "abc12tre";
var m = str.match(/\d{1,}|\D{1,}/g);
if(m.length >= 2){
    	alert("Jepp, lösenordet innehåller både siffror och bokstäver.");
}else{
 	alert("Lösenordet måste innehålla både siffror och bokstäver!.");
}
</script>
```

Släpper då även igenom åäö.

Permalänk: https://www.webforum.nu/p/1404348

## #7 — dectgap, 2004-08-09T11:19Z

> **Jesper T skrev:**
>
> Ok, vad bra. 
> Detta verkar också funka.

Fast det där blir fel.
Du kontrollerar, genom regexpen, bara att lösenordet innehåller minst en siffra ELLER minst ett tecken annat än en siffra, d.v.s. du kollar egentligen bara att lösenordet innehåller minst ett tecken (oavsett vilket).
Sedan kontrollerar du att lösenordet är minst två tecken långt, så vilket lösenord som helst, oavsett tecken, som är minst två tecken långt går igenom.

Permalänk: https://www.webforum.nu/p/1404360

## #8 — Jesper T, 2004-08-09T11:29Z

Nja, ja, första grupperingen kollar att det finns minst en siffra och den andra grupperingen kollar att det finns minst en "ickesiffra".
Och är m.length större än 2 så är det ok, annars inte.
Eller har jag fel?

Permalänk: https://www.webforum.nu/p/1404375

## #9 — dectgap, 2004-08-09T11:35Z

Ja, du har fel :)

```
/\d{1,}|\D{1,}/
```

blir i klartext:
"ett tecken (0-9) minst en gång ELLER ett tecken (annat än 0-9) minst en gång"

Testa själv att plocka bort siffrorna från ditt lösenord så ska du se att det går igenom.

Permalänk: https://www.webforum.nu/p/1404382

## #10 — Jesper T, 2004-08-09T11:38Z

Har du testat?
Nej det funkar bra för mig så jag fattar inte vilket fel som är trasigt nu.

```
abc12tre : går igenom
abctre : går inte igenom
12 : går inte igenom
1 som måste ha r1 : går igenom
```

Permalänk: https://www.webforum.nu/p/1404387

## #11 — dectgap, 2004-08-09T11:48Z

Sorry, det var jag som tänkte fel.
Jag testade tidigare, men läste inte meddelandet som kom upp vidare noga.

Jag ska nog dricka ett glas vatten till - jag sa ju att det var varmt! :)

Permalänk: https://www.webforum.nu/p/1404393

## #12 — Jesper T, 2004-08-09T12:41Z

Det är lungt. Jag har också värmeslag. :x Vatten :P

Permalänk: https://www.webforum.nu/p/1404434

---

Tråden på webben: https://www.webforum.nu/amne/javascript/108808-validera-med-minst-2-siffror
