---
title: "inte samma tecken fler än fyra ggr"
type: "forum-thread"
url: "https://www.webforum.nu/amne/javascript/43366-inte-samma-tecken-fler-än-fyra-ggr"
topic: "JavaScript"
topic_url: "https://www.webforum.nu/amne/javascript"
author: "ampy"
published: "2002-05-08T13:40:06.000Z"
updated: "2002-05-16T20:33:45.000Z"
replies: 15
views: 482
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/43366-inte-samma-tecken-fler-än-fyra-ggr"
---

# inte samma tecken fler än fyra ggr

## #1 — ampy, 2002-05-08T13:40Z

Kan man göra så att det kommer upp en ruta när man trycker på submitknappen när en textarea innehåller samma tecken minst 3 ggr i rad?

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

## #2 — spango, 2002-05-08T20:20Z

```
var reg = /(.)\1\1/;
if (reg.test(str))
    alert("Men hallå");
```

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

## #3 — ampy, 2002-05-08T21:25Z

Vilket är textareans namn, vart ska jag skriva det i den koden?

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

## #4 — Broskan, 2002-05-09T07:00Z

Validera

Testa det här.

```
<HTML>
<HEAD>
<TITLE></TITLE>
<SCRIPT LANGUAGE="JavaScript">
function validera(str){
var reg = /(.)\1\1/;
if (reg.test(str)){
    alert("Men hallå");
    return false;
}else{
    return true;
}

}
</SCRIPT>
</HEAD>
<BODY>

<FORM NAME="formen" METHOD="post" onSubmit="return validera(document.formen.arean.value);" ACTION="dinsida.php">
<TEXTAREA NAME="arean" COLS="10" ROWS="8"></TEXTAREA>
<BR>
<INPUT TYPE="submit" VALUE="send">
</FORM>

</BODY>
</HTML>
```

//Broskan

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

## #5 — ampy, 2002-05-12T17:34Z

```
onsubmit="if(check(this)){ if(submitted){alert('Skicka bara en gång'); return false;}else{submitted=true; return true;}}else{ return false; }"
```

Hur ska man lägga in denna kod i koden ovanför?

```
onSubmit="return validera(document.form.text.value);"
```

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

## #6 — ampy, 2002-05-13T19:34Z

Ingen som vet?

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

## #7 — solbulle, 2002-05-13T20:00Z

Kan det inte vara läge att slå ihop denna funktion med din check() funktion?
Bara en tanke.

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

## #8 — ampy, 2002-05-14T21:07Z

```
		<script language="javascript">

		function trim(){
		return this.replace(/^\s+|\s+$/g,"");
		}
		String.prototype.trim=trim;

		function validera(str){
		var reg = /(.)\1\1/;
		}

		function check(formobj){

		if(formobj.text.value.length==0){
		alert('Du har inte skrivit något.');
		return false;
		} else if (formobj.text.value.trim().length < 15) {
		alert('Meddelandet måste vara mer än 15 tecken.');
		return false;
		} else if (formobj.text.value.validera) {
		alert('Meddelandet är ogiltigt.');
		return false;
		} else {
		return true;	
		}
		}

		</script>
```

Den sista elseif fungerar inte, varför?

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

## #9 — Broskan, 2002-05-15T05:44Z

regExp?

Men du har ju strippat sönder den RegExp som du fick av spango.

var reg = /(.)\\1\\1/;
if (reg.test(str))
    alert("Men hallå");

Du kör ju ingen test på din sträng som du inte ens skickar med som argument. 
Titta på det som jag skrev tidigare och bygg vidare på det.

//Broskan

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

## #10 — Broskan, 2002-05-15T07:30Z

Validering

Testa det här.

```
<HTML>
<HEAD>
<TITLE></TITLE>
<STYLE>

</STYLE>
<SCRIPT LANGUAGE="JavaScript">

function validera(str){
		if(str.length == 0){
			alert('Du har inte skrivit något.');
			return false;
		}else{
			str = str.replace(/^\s+|\s+$/g,"");
			reg = /(.)\1\1/;

			if(str.length < 15){
				alert('Meddelandet måste vara mer än 15 tecken.');
				return false;
			}else if(reg.test(str)){
    			alert('Meddelandet är ogiltigt.');
				return false;
			}else{
				return true;
			}
		}
}
</SCRIPT>
</HEAD>
<BODY>

<FORM NAME="formen" METHOD="post" onSubmit="return validera(document.formen.arean.value);" ACTION="dinsida.php">
<TEXTAREA NAME="arean" COLS="20" ROWS="4"></TEXTAREA>
<BR>
<INPUT TYPE="submit" VALUE="send">
</FORM>

</BODY>
</HTML>
```

//Broskan

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

## #11 — ampy, 2002-05-15T09:16Z

Nu när jag skriver så här:

```
onsubmit="if(return validera(document.form.text.value)) { if(submitted){alert('Skicka bara en gång'); return false;}else{submitted=true; return true;}}else{ return false; }"
```

Får jag syntaxfel på koden, varför?

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

## #12 — ampy, 2002-05-15T20:00Z

Ingen som vet felet?

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

## #13 — @nders, 2002-05-15T20:03Z

Prova att plocka bort return i din if. Den känns lite malplacerad.

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

## #14 — ampy, 2002-05-16T15:22Z

Nu fungerar det  :e

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

## #15 — ampy, 2002-05-16T19:13Z

denna tillåter över 3 men om man skriver en adress, tex <https://www.blabla.com> så varnar den, därför vill jag byta till fyra

denna tillåter 4 och högre:

reg = /(.)\\1\\1/;

men jag vill tillåta 3 och högre

eller kan man göra ett undantag för www?

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

## #16 — spango, 2002-05-16T20:33Z

Det finns lite olika sätt...

```
[blue][i]// släpp bara igenom WWW[/i][/blue]
reg = /([^w])\1\1/i; 
[blue][i]// förbjud fyra tecken i rad[/i][/blue]
reg = /(.)\1\1\1/;
```

Punkten betyder "vilket tecken som helst", och \\1 betyder "det som är i den första parantesen".
\[^w\] betyder "alla tecken förutom w", du kan även lägga till tecken så att exempelvis PPP accepteras: \[^wp\]
Och så kan du tillåta flera blanktecken i rad: \[^wp\\s\] (\\s motsvarar mellanslag, tabb och radbrytning)

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

---

Tråden på webben: https://www.webforum.nu/amne/javascript/43366-inte-samma-tecken-fler-än-fyra-ggr
