PDA

View Full Version : Regular Expressions...


Phorpher
2000-04-06, 09:04
Hmmm...

Jag sitter och arbetar med en ny version av min hemsida och det kommer att bli bla. medlemsfunktioner. Medlemmarna ska kunna skriva in nyheter och lite annat smått och gott.

Av vissa självklara skäl så tillåter jag inte html kod i inlägg men jag vill fortfarande att medlemmarna ska kunna formatera sin text på vissa sätt.
T ex fet text, skriva in länkar osv.

Jag har då tänkt att använda liknande specialkoder som Webforum har och konvertera dem till html kod.

Fet text är inget problem att fixa men när jag försöker fixa länkarna så står det still i skallen.. :e

Jag har tänkt att använda formatet:
[ länk="http://3d.burken.nu"]3DManiac[ /länk]

Nu till problemet.. Jag fattar f*n inte hur jag ska göra om denna specialkod till htmlkod.

Det är inte vilka funktioner jag ska använda som är frågan utan hur man ska gå till väga.
Jag har försökt förstå mig på regular expressions men har inte fattat speciellt mycket... :)

Någon som kan kläcka en lösning?
Det går ju uppenbarligen eftersom Webforum använder specialkoder.. :D

Tack.



------------------
- Erik Hellström -
http://3d.burken.nu

nicclas
2000-04-06, 14:00
Hejsan,

Har funderat lite på detta... Jag har (heller) aldrig använt några (luriga) "regular expressions" tidigare men jag kom fram till att man borde kunna göra såhär:

[<?
$str = "En [länk=\"http://www.nic-sys.se/\"]länk[/länk] som heter Nicclas\n och en som heter [länk=\"http://www.sunet.se/\"]Sune[/länk].";
echo "\n\n$str\n\n";
$str=eregi_replace("(\[länk=\")([A-Za-z0-9\._/:\-]*)(\"\])","<a href='\\2'>",$str);
$str=eregi_replace("(\[/länk])","</a>",$str);
echo "\n\n$str\n\n";
exit;
?>

Publicera gärna ev. förbättringar som du (eller någon annan) gör här!

/nicclas @ http://www.nic-sys.se


[Redigerat av nicclas den 06 apr 2000]