---
title: "reguljärt uttryck"
type: "forum-thread"
url: "https://www.webforum.nu/amne/php/79995-reguljärt-uttryck"
topic: "PHP"
topic_url: "https://www.webforum.nu/amne/php"
author: "Nexus86"
published: "2003-06-17T23:33:32.000Z"
updated: "2003-06-18T00:44:47.000Z"
replies: 2
views: 170
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/79995-reguljärt-uttryck"
---

# reguljärt uttryck

## #1 — Nexus86, 2003-06-17T23:33Z

Har lite problem med ett reguljärt uttryck.

```php
$text = eregi_replace("(&lt;c&gt;)([^&][^l][^t][^;][^c])*(&lt;/c&gt;)", "<center>\\\\2</center>", $text);
```

Meningen är att den ska leta efter alla "\<c\>någon text\</c\>" i en sträng som jag använt htmlentities på och som inte innehåller en annan tagg som börjar på c (har nämligen bara den c-taggen). Felet med detta uttryck som jag har över är att den inte klarar mellanslag eller nya rader. :l

Några ideer?

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

## #2 — Nexus86, 2003-06-18T00:08Z

Har kommit en bit på väg. Har följande nu:

```php
$text = eregi_replace("(&lt;c&gt;)((.|\n)*)(&lt;/c&gt;)", "<center>\\\\2</center>", $text);
```

Den klarar alla tecken. Men den ser inte till att man inte bakar in en \<c\> inuti den hittade. Detta behövs för att annars byter den ut det första \<c\> mot \<center\> och det **sista** \</c\> mot \</center\>. Eller finns det någon bättre lösning?

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

## #3 — Nexus86, 2003-06-18T00:44Z

Lyckades få till det med följande uttryck. :)

```php
$text = eregi_replace("(&lt;c&gt;)(([^&]|&([^l]|l([^t]|t([^;]|;([^c])))))*)(&lt;/c&gt;)", "<center>\\\\2</center>", $text);
```

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

---

Tråden på webben: https://www.webforum.nu/amne/php/79995-reguljärt-uttryck
