---
title: "Ã„ndra gemener till versaler och vice versa"
type: "forum-thread"
url: "https://www.webforum.nu/amne/javascript/101709-ã-ndra-gemener-till-versaler-och-vice-versa"
topic: "JavaScript"
topic_url: "https://www.webforum.nu/amne/javascript"
author: "tronez"
published: "2004-04-17T10:45:25.000Z"
updated: "2004-04-17T16:51:08.000Z"
replies: 4
views: 790
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/101709-ã-ndra-gemener-till-versaler-och-vice-versa"
---

# Ã„ndra gemener till versaler och vice versa

## #1 — tronez, 2004-04-17T10:45Z

```

function konvertera(text)
{
	/*
		Skapa ett mÃ¶nster som letar reda pÃ¥ alla gemena och versala A
	*/
	var pattern = /[aA]/g;
	
	var text = prompt("Skriv lite text, vettja!","");
	/*
		Byt ut alla tecken som matchar mÃ¶nstret vi skapade ovanfÃ¶r med ett #
	*/
	text = text.replace(pattern, "#");
	
	
	// Skriv ut den ny texten
	document.write(text);	
	
}
```

Denna kod funkar som jag vill, dvs byta ut alla A a mot #, men om jag vill gÃ¶ra sÃ¥ att alla gemener blir versaler och versaler blir gemener, hur ska mna gÃ¥ tillvÃ¤ga dÃ¥?

GÃ¥r det att skriva i RegExp, lr mÃ¥ste man anvÃ¤nda sig av toLowerCase och toUpperCase?

Men dÃ¥ Ã¤r frÃ¥gan hur man ska kÃ¶ra dessa tillsammans, fÃ¶r om man text.toLowerCase() fÃ¶rst sÃ¥ blir ju alla gemener, och om man sen kÃ¶r text.toUpperCase, dÃ¥ blir ju alla stora ist.

NÃ¥n som fattar vad jag menar...

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

## #2 — Jojoxx, 2004-04-17T15:42Z

Exempel:

```
String.prototype.swicthCase = function(){
	var str=new String();
	for (var n=0;n<this.length;n++){
		str+=(this.charAt(n)==this.charAt(n).toLowerCase())?this.charAt(n).toUpperCase():this.charAt(n).toLowerCase();
	}
	return str;
}

var text = prompt("Skriv lite text, vettja!","");
alert(text.swicthCase());
```

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

## #3 — tronez, 2004-04-17T16:04Z

tack, funkade perfekt,  men skulle du kunna förklara lite närmre vad koden gör(jag vet ju vad resultat blir, men hur blir det det?)?

dessa 2 speciellt

```
String.prototype.swicthCase = function(){

str+=(this.charAt(n)==this.charAt(n).toLowerCase())?this.charAt(n).toUpperCase():this.charAt(n).toLowerCase();
```

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

## #4 — Engine^, 2004-04-17T16:38Z

Mmm...

```
if(this.charAt(n) == this.charAt(n).toLowerCase())
  str += this.charAt(n).toUpperCase();
else
  str += this.charAt(n).toLowerCase();
```

Ett kompaktare sätt att skriva en if-sats. Kallas inline if-statement om jag inte tar fel.

```
String.prototype.switchCase = function() {...}
```

Jag skulle förklara det som att skapa en extra metod för klassen String. Istället för att göra en vanlig funktion

```
function switchCase() {...}

text = switchCase(text);
```

**Jojoxx** kanske har en bättre förklaring om det behövs ;)

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

## #5 — tronez, 2004-04-17T16:51Z

tack, det mesta klarnade nu  :birp

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

---

Tråden på webben: https://www.webforum.nu/amne/javascript/101709-ã-ndra-gemener-till-versaler-och-vice-versa
