Omezení žravosti RegExp v PHP – PHP – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Omezení žravosti RegExp v PHP – PHP – Fórum – Programujte.comOmezení žravosti RegExp v PHP – PHP – Fórum – Programujte.com

 

Bummer0
Návštěvník
7. 10. 2008   #1
-
0
-

Zdravím.

Potýkám se s problémem - snažím se o jednoduchý editor s formátováním ve stylu phpBBcode, tj. například

[align=center]text text text[/align]

chci při posílání uživateli pomocí eregi_replace nahradit za
<span style="display: block; text-align: center">text text text</span>

Buhužel kód
$text = eregi_replace("\[align=(left|center|right|justify)?\](.*?)\[/align\]",

"<span style=\"display: block; text-align: \\1\">\\2</span>", $text);

je příliš žravý, a tak mi nahradí pouze první a poslední tag align a zbytek vynechá. Zkusil jsem za tu žravou hvězdičku doplnit otazník, ale eregi_replace evidentně nepodporuje tzv. líné kvalifikátory a vyhodí chybu REG_BADRPT.
Pak jsem zkoušel i funkci preg_replace, ale ta se chová nějak podivně a nechce mi uznat vůbec nic.

Jak byste tento problém řešili vy? Kde dělám chybu?

Nahlásit jako SPAM
IP: 89.203.136.–
Bummer0
Návštěvník
7. 10. 2008   #3
-
0
-

To pawlik : Díky moc. Našel jsem inspiraci a už mi to funguje. Vůbec by mě nenapadlo, že se s tím potýká tolik lidí...

Nahlásit jako SPAM
IP: 89.203.136.–
Zjistit počet nových příspěvků

Přidej příspěvek

Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!

Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku

×Vložení zdrojáku

×Vložení obrázku

Vložit URL obrázku Vybrat obrázek na disku
Vlož URL adresu obrázku:
Klikni a vyber obrázek z počítače:

×Vložení videa

Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
 
Podporujeme Gravatara.
Zadej URL adresu Avatara (40 x 40 px) nebo emailovou adresu pro použití Gravatara.
Email nikam neukládáme, po získání Gravatara je zahozen.
-
Pravidla pro psaní příspěvků, používej diakritiku. ENTER pro nový odstavec, SHIFT + ENTER pro nový řádek.
Sledovat nové příspěvky (pouze pro přihlášené)
Sleduj vlákno a v případě přidání nového příspěvku o tom budeš vědět mezi prvními.
Reaguješ na příspěvek:

Uživatelé prohlížející si toto vlákno

Uživatelé on-line: 0 registrovaných, 3 hosté

Podobná vlákna

Regexp — založil Figa

Multi Regexp — založil Figa

Problem - REGEXP — založil Kcko__

Regexp a kontrola délky — založil Aigor

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032024 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý