---
title: "RegExp: Hjälp med mönster"
type: "forum-thread"
url: "https://www.webforum.nu/amne/php/94815-regexp-hjälp-med-mönster"
topic: "PHP"
topic_url: "https://www.webforum.nu/amne/php"
author: "Peeer"
published: "2004-01-14T20:33:04.000Z"
updated: "2004-01-14T22:14:24.000Z"
replies: 4
views: 277
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/94815-regexp-hjälp-med-mönster"
---

# RegExp: Hjälp med mönster

## #1 — Peeer, 2004-01-14T20:33Z

Jag har en sträng med nyheter som ser ut som nedan. Jag vill helt enkelt (enkelt är kanske fel ord att använda) få ut en array som innehåller datumet, rubriken, texten samt url'en för alla nyheter. Går det att göra med ett enda mönster, eller ska jag försöka dela upp det på något sätt?

Obs: "enter"-slagen ni ser i koden nedan ska inte ingå i mönstret, strängen kommer vara ren från sådana specialtecken (hela strängen är mao på en enda lång rad).

```
2004-01-07<br><b><span class="header2">Rubrik1</span></b><br>
Text1<br><br>
<a href="t2.asp?p=1920&x=1&a=100314"><b>L&auml;s mer</b></a><br><br>

2004-01-06<br><b><span class="header2">Rubrik 2</span></b><br>
Text2<br><br>
<a href="t2.asp?p=1920&x=1&a=68287"><b>L&auml;s mer</b></a><br><br>

2003-12-22<br><b><span class="header2">Rubrik3</span></b><br>
Text3<br><br>
<a href="t2.asp?p=1920&x=1&a=99624"><b>L&auml;s mer</b></a><br><br>

//I den riktiga strängden finns det fler än dessa 3 nyheter som ska plockas ut.
```

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

## #2 — Peeer, 2004-01-14T21:59Z

Ok, halvvägs. Har lyckats få fram ett mönster som matchar den första nyheten, men hur gör jag för att få ut alla nyheter?

```
preg_match('/(\d{4}-\d{2}-\d{2})<br><b><span class="header2">(.*?)<\/span><\/b><br>(.*?)<br><br><a href="(.*?)"><b>Läs mer<\/b><\/a><br><br>/is',$string,$temp);
print_r($temp);

//Ger outputen:
Array
(
    [0] => 2004-01-07<br><b><span class="header2">Rubrik1</span></b><br>Text1<br><br><a href="t2.asp?p=1920&x=1&a=100314"><b>Läs mer</b></a><br><br>
    [1] => 2004-01-07
    [2] => Rubrik1
    [3] => Text1
    [4] => t2.asp?p=1920&#x=1&a=100314
)
```

Följdfråga: Varför dyker det upp ett # mitt inne i url'en? Den finns inte i strängen från början, och den finns inte i $temp\[0\]
/r # syns viss inte när man presenterar innehållet här på wF heller, men om ni citerar mitt inlägg så ser ni att det har dykt upp ett # mellan &-tecknet och "x"

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

## #3 — Peeer, 2004-01-14T22:13Z

Hmm, oj :r
preg_match_all() finns ju också. Tack och hej :)

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

## #4 — sebbz, 2004-01-14T22:14Z

\\r: du hann före :(

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

## #5 — sebbz, 2004-01-14T22:14Z

(tryckte på citatknappen istl för redigera ;))

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

---

Tråden på webben: https://www.webforum.nu/amne/php/94815-regexp-hjälp-med-mönster
