---
title: "Reg-uttryck"
type: "forum-thread"
url: "https://www.webforum.nu/amne/php/14673-reg-uttryck"
topic: "PHP"
topic_url: "https://www.webforum.nu/amne/php"
author: "Swey"
published: "2000-07-15T02:49:00.000Z"
updated: "2000-07-20T17:23:00.000Z"
replies: 6
views: 400
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/14673-reg-uttryck"
---

# Reg-uttryck

## #1 — Swey, 2000-07-15T02:49Z

Tjo

Jag vill översätta html-taggar från , \[kod\] osv.. till dess HTML-motsvarighet.

Detta fungerar
$str = eregi_replace( '(\\\[\\\])(.+)(\\\[/b\\\])', '\<b\>\\2\</b\>', $str );

men kan man inte slå in allting i samma uttryck på något sätt? 

Ungefär som detta
$str = eregi_replace( '(\\\[)(\[b\|i\|u\])(\\\])(.+)(\\\[\\2)(\\\])', '\<\\2\>\\4\</\\2\>', $str );

Men detta fungerar inte. \\2 kan tydligen inte användas i söksträngen (markerat blått). Vad göra?

*Har använt ' istället för " för göra koden mer lättläst*

Danke!

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

## #2 — petergrennanet, 2000-07-20T15:02Z

Ar inte du en sys admin till WebForum.
I sa fall sa borde du har tillgong till Source'en till detta forum.
Leta dar.

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

## #3 — emission, 2000-07-20T15:49Z

Nej, UBB söker upp varje tagg för sig (gjorde det sist jag kollade, i alla fall).

I princip är det möjligt, men det är svårt att beskriva att sluttaggen ska vara samma som starttaggen.

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

## #4 — Swey, 2000-07-20T16:05Z

varför är det svårt?

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

## #5 — emission, 2000-07-20T16:53Z

Därför att jag inte kan komma på hur det funkar i PHP. Det är lätt i Perl. Tillåt mig klura en stund...Klart man kan använda perlstyle regexp förstås...

I Perl kan man t.ex. köra

$str =\~ s#\\\[(i\|b)\\\](.+?)(\\\[/\\1\\\])#\<$1\>$2\</$1\>#gis;

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

## #6 — Swey, 2000-07-20T16:56Z

men hur löser man det med preg_replace?

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

## #7 — emission, 2000-07-20T17:23Z

Så här:

$str = preg_replace("/\\\[(i\|b\|u)\\\](.+)\\\[\\/\\\\1\\\]/", "\<\\\\1\>\\\\2\</\\\\1\>", $str );

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

---

Tråden på webben: https://www.webforum.nu/amne/php/14673-reg-uttryck
