---
title: "regexp hjälp"
type: "forum-thread"
url: "https://www.webforum.nu/amne/javascript/117326-regexp-hjälp"
topic: "JavaScript"
topic_url: "https://www.webforum.nu/amne/javascript"
author: "Smultron"
published: "2004-12-04T15:28:00.000Z"
updated: "2004-12-24T13:53:13.000Z"
replies: 11
views: 430
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/117326-regexp-hjälp"
---

# regexp hjälp

## #1 — Smultron, 2004-12-04T15:28Z

Jag behvöer hjälp att skapa en regexp som tillåter
a-ö
A-Ö
0-9
\_ ! . ? \* - &
mellanslag

någon som kan hjälpa mig, mitt nuvarande ser ut såhär men verkar inte fungera korrekt o vill vetav ad jag gör för fel...

```
var regexp = /[^-\w!?*_\.,;]/;
```

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

## #2 — danii, 2004-12-04T15:32Z

"/^\[a-zåäöÅÄÖ0-9\_!.?\*-& \]$/i"

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

## #3 — dectgap, 2004-12-04T15:33Z

Jag brukar söka efter otillåtna tecken, för att se om strängen är ok.

```
var regexp = /[^-\da-zåäö_!.?*& ]/i;

if(!regexp.test(str)) {
   // str är en godkänd sträng
} else {
  // str innehåller något otillåtet tecken
}
```

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

## #4 — danii, 2004-12-04T15:39Z

> **dectgap skrev:**
>
> Jag brukar söka efter otillåtna tecken, för att se om strängen är ok.
> var regexp = /\[**^**\-\\da-zåäö\_!.?\*& \]/i;
> 
> if(!regexp.test(str)) {
>    // str är en godkänd sträng
> } else {
>   // str innehåller något otillåtet tecken
> }

Han vill att tecknen ska tillåtas. Inte tvärtom.

//Tog bort kod-taggen så att  **funkar**

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

## #5 — dectgap, 2004-12-04T15:49Z

Jag har dubbel negation, både i regexpen och i if-satsen.
"Om det **inte** finns ett tecken som **inte** tillåts, så är strängen ok."

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

## #6 — danii, 2004-12-04T15:52Z

> **dectgap skrev:**
>
> Jag har dubbel negation, både i regexpen och i if-satsen.
> "Om det **inte** finns ett tecken som **inte** tillåts, så är strängen ok."

Oj...missade utropstecknet. En fråga dock. Funkar i på åäö? Förstår den att åäö toupper = ÅÄÖ?

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

## #7 — dectgap, 2004-12-04T15:53Z

> **danii skrev:**
>
> > **dectgap skrev:**
> >
> > Jag har dubbel negation, både i regexpen och i if-satsen.
> > "Om det **inte** finns ett tecken som **inte** tillåts, så är strängen ok."
>
> 
> Oj...missade utropstecknet. En fråga dock. Funkar i på åäö? Förstår den att åäö toupper = ÅÄÖ?

Jajamensan.

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

## #8 — Smultron, 2004-12-23T22:33Z

detta funkar men jag vill också lägga till radbrytningar, det funkar inte om jag har en radbrytning nu. eller det går som att det blir fel i min sträng då testa at t läga till \\n men funkar inte

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

## #9 — dectgap, 2004-12-23T22:36Z

Ändra då till

```
var regexp = /[^-\da-zåäö_!.?*& \n]/i;
```

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

## #10 — Smultron, 2004-12-23T22:41Z

nej det går tyvär inte för så fort jag har en radbrytning med i min text blir det fel

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

## #11 — MAge, 2004-12-24T01:09Z

Nu säjer jag inte att jag greppat RegExp fullt ut än men, ".", "?" och "\*" är specialtecken och ska väl skrivas med ett "\\" innan? Så alltså

"/^\[\\w!\\.\\?\\\*-& \]+$/"

\\w för "a-zA-Z0-9\_"

/Jonas

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

## #12 — dectgap, 2004-12-24T13:53Z

> **MAge skrev:**
>
> Nu säjer jag inte att jag greppat RegExp fullt ut än men, ".", "?" och "\*" är specialtecken och ska väl skrivas med ett "\\" innan? Så alltså
> 
> "/^\[\\w!\\.\\?\\\*-& \]+$/"
> 
> \\w för "a-zA-Z0-9\_"
> 
> 
> /Jonas

Man behöver inte escapea ? . \* eller andra specialtecken om man skriver dem i en character-class.
Och visserligen innehåller *\\w* tecknen *a-zA-Z0-9\_*, men *\\w* innehåller fler tecken än så, t ex *ßûÿ*.

> **Smultron skrev:**
>
> nej det går tyvär inte för så fort jag har en radbrytning med i min text blir det fel

```
str = "Här är en sträng med \n radbrytning.";
var regexp = /[^-\da-zåäö_!.?*&\n ]/i;

if(!regexp.test(str)) {
   alert("Strängen är godkänd.");
} else {
   alert("Strängen är INTE godkänd.");
}
```

Vad får du för meddelande när du testar den koden då?
Eventuellt skulle du kunna utvidga till:

```
var regexp = /[^-\da-zåäö_!.?*&\n\r ]/i;
```

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

---

Tråden på webben: https://www.webforum.nu/amne/javascript/117326-regexp-hjälp
