---
title: "preg_match fundering"
type: "forum-thread"
url: "https://www.webforum.nu/amne/php/166479-preg-match-fundering"
topic: "PHP"
topic_url: "https://www.webforum.nu/amne/php"
author: "Fuel"
published: "2007-11-17T06:07:46.000Z"
updated: "2007-11-18T22:53:17.000Z"
replies: 9
views: 855
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/php/166479-preg-match-fundering"
---

# preg_match fundering

## #1 — Fuel, 2007-11-17T06:07Z

Vad har jag gjort för fel ?

```php
if (preg_match("/^([a-z]{2,}[a-z0-9_-]){2,10}$/i", "bE11a"))
{
	echo "bE11a Rocks!<br />";
}
```

 Ska börja med minst 2 bokstäver, sen får det vara siffror, bokstäver eller bindestreck etc. alltsammans minst 2 högst 10 tecken.

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

## #2 — MarkusHelin, 2007-11-17T14:27Z

testa:
/^\[a-z\]{2,}\[a-z0-9\_-\]{2,10}$/i

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

## #3 — Fuel, 2007-11-17T17:53Z

mja.. delvis.. detta funkar inte

```php
if (preg_match("/^[a-z]{2,}[a-z0-9_-]{2,10}$/i", "EE"))
{
	echo "EE Rocks!<br />";
}
```

och försöker jag gruppera 

```php
([a-z]{2,}[a-z0-9_-])
```

 så funkar det inte heller

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

## #4 — aasah, 2007-11-18T20:49Z

Jag är ingen \* på det här, men testa:

```php
$str = "bE11a";
if (preg_match("/^[a-z][a-z]+[a-z0-9_-]){8}$/i", $str) &&
    strlen($str) <= 10)
{
	echo "bE11a Rocks!<br />";
}
```

> Ska börja med minst 2 bokstäver, sen får det vara siffror, bokstäver eller bindestreck etc. alltsammans minst 2 högst 10 tecken.

Eftersom du måste ha 2 bokstäver (minst) före, så behöver du då ingen minigräns för den andra friare delen.

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

## #5 — Fuel, 2007-11-18T21:12Z

Njet .. not funka! jag är ingen \* på det här heller :)

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

## #6 — aasah, 2007-11-18T21:14Z

> **Fuel skrev:**
>
> Njet .. not funka! jag är ingen \* på det här heller :)

På vad sätt funkar den inte?

Så här då?

```php
$str = "bE11a";
if (preg_match("/^[a-zA-Z][a-zA-Z]+[a-zA-Z0-9_-]*$/i", $str) &&
    strlen($str) <= 10)
{
	echo "bE11a Rocks!<br />";
}
```

Om du vill ha stora bokstäver med...

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

## #7 — Fuel, 2007-11-18T21:21Z

Visst saknas det en parantes? sista i:et visst är det för case insensitive?

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

## #8 — aasah, 2007-11-18T21:34Z

> **Fuel skrev:**
>
> Visst saknas det en parantes? sista i:et visst är det för case insensitive?

Nej, där var en parentes för mycket. Sorry!   :r Redigerat inlägget ovan och tagit bort parentesen.

Vad gäller i:et - ja jag *tror* det.

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

## #9 — Fuel, 2007-11-18T21:41Z

Funkar inte för mig

Jag måste tröstäta lite pizza nu.... buhuhuu...mmmmmm

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

## #10 — colione, 2007-11-18T22:53Z

Kke inte snyggaste, men den här tror jag mig ska passa.

```
^([a-z]{2}|[a-z]{2}[a-z0-9_-]{0,8})$/i
```

RED-\>
Eller så skiter vi i det onödiga jag lade dit:

```
^([a-z]{2}[a-z0-9_-]{0,8})$
```

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

---

Tråden på webben: https://www.webforum.nu/amne/php/166479-preg-match-fundering
