---
title: "regex och ipnummer"
type: "forum-thread"
url: "https://www.webforum.nu/amne/dotnet/153796-regex-och-ipnummer"
topic: ".NET"
topic_url: "https://www.webforum.nu/amne/dotnet"
author: "peterbladh"
published: "2006-11-15T14:18:34.000Z"
updated: "2006-11-17T22:51:46.000Z"
replies: 10
views: 655
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/dotnet/153796-regex-och-ipnummer"
---

# regex och ipnummer

## #1 — peterbladh, 2006-11-15T14:18Z

Hej,

jag hittade följande kod på vbcity.com men får den inte att fungera (match blir false även om det är en korrekt ipadress):

...

```
string pattern = @"^\b([0]?)\.(25[0-5]/2[0-4][0-9]/[01]?[0-9][0-9]?)\.(25[0-5]/2[0-4][0-9]/[01]?[0-9][0-9]?)\.(25[0-5]/2[0-4][0-9]/[01]?[0-9][0-9]?)\b";
if(!Regex.IsMatch(ip, pattern))
{
    MessageBox.Show("'" + ip + "'", "Fel");
}
```

Nån som ser vad som är fel? Jag har knappt jobbat med regular expressions tidigare så jag vet inte om det är fel i själva uttrycket eller i c#-koden...

Tack på förhand!

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

## #2 — Peter S, 2006-11-15T14:56Z

Du kanske vill testa [GetHostEntry()](http://msdn2.microsoft.com/en-us/library/ms143997.aspx) istället?

Genom att använda ett try/catch-block verkar det enkelt att bestämma huruvida den inmatade strängen är en giltig IP-adress.

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

## #3 — peterbladh, 2006-11-15T14:59Z

Tack för tipset!

Fast jag vill nog gärna få regex-varianten att fungera, om inte annat ur utbildningssyfte!

//peter

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

## #4 — Peter S, 2006-11-15T15:38Z

Jag förstår inte hur mönstret i ditt exempel skulle kunna fungera. Möjligtvis skall '/' bytas mot '\|'. Dessutom verkar det som att den första byten endast får vara en nolla.

```
string pattern = @"^\b(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\b";
```

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

## #5 — emission, 2006-11-15T23:37Z

> **Peter S skrev:**
>
> Du kanske vill testa [GetHostEntry()](http://msdn2.microsoft.com/en-us/library/ms143997.aspx) istället?
> 
> Genom att använda ett try/catch-block verkar det enkelt att bestämma huruvida den inmatade strängen är en giltig IP-adress.

Även om det en är fungerande princip, som jag själv skulle kunna tänkas utnyttja, så måste det ändå sägas att try/catch inte ska användas som valideringsmekanism.

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

## #6 — Peter S, 2006-11-16T10:42Z

> **emission skrev:**
>
> Även om det en är fungerande princip, som jag själv skulle kunna tänkas utnyttja, *så måste det ändå sägas att try/catch inte ska användas som valideringsmekanism*.

Kursivering av mig.

Vad är anledningen/-arna till det – prestanda och semantik?

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

## #7 — voigtann1, 2006-11-17T12:47Z

```
(2[0-4]\d|25[0-5]|[01]?\d\d?)\.(2[0-4]\d|25[0-5]|[01]?\d\d?)\.(2[0-4]\d|25[0-5]|[01]?\d\d?)\.(2[0-4]\d|25[0-5]|[01]?\d\d?)
```

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

## #8 — peterbladh, 2006-11-17T13:15Z

tackar! :)

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

## #9 — voigtann1, 2006-11-17T14:06Z

Använd Acceptera slutgiltigt svar för att andra lätt kan hitta svar ;D

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

## #10 — emission, 2006-11-17T20:42Z

> **Peter S skrev:**
>
> Kursivering av mig.
> 
> Vad är anledningen/-arna till det – prestanda och semantik?

Kort och gott - ja.

/G

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

## #11 — Peter S, 2006-11-17T22:51Z

> **emission skrev:**
>
> Kort och gott - ja.
> 
> /G

Alrighty!  :bire

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

---

Tråden på webben: https://www.webforum.nu/amne/dotnet/153796-regex-och-ipnummer
