preg_replace vs me 1:0

Paspirgilis

Weißer Powerranger
Hi,
Ich versuche ein "link-einfüge-system" für eine selbstgeschriebene shoutbox zu machen.
Da ich nicht viel mit regexp gemacht hab hab cih heir Probleme.
Ich will einen Syntax aufbauen der nicht von stripslashes und strip tags erkannt wird aber als "link" identifiziert werden kann und replaced wird:

PHP:
<b>Warning</b>:  preg_replace() [<a href='function.preg-replace'>function.preg-replace</a>]: Unknown modifier '(' in <b>/data/www/localhost/htdocs/noa/new/php/ajax/sendshoutbox.php</b> on line <b>18</b><br />

$text = preg_replace(':a:(.+):(.+):', '<a href="$1">$2</a>', $text);

MFG
Mark Paspirgilis
 
Probier mal Folgenden regulären Ausdruck:
Code:
/:a:([^:]+):([^:]+):/
Die Wahl des Doppelpunkts als Trennzeichen ist aber schlecht gewählt, da URLs ebenfalls Doppelpunkte enthalten können.
 
stimmt wegen den ports z.b.
wie wärs damit?

wie mach ich das denn mit [ a ] und [ img ] für images?
ne idee?

selbes prob bei deinem regexp
Code:
<b>Warning</b>:  preg_replace() [<a href='function.preg-replace'>function.preg-replace</a>]: Unknown modifier '(' in <b>/data/www/localhost/htdocs/noa/new/php/ajax/sendshoutbox.php</b> on line <b>18</b><br />
 
Sowas hier:

PHP:
// $value enthält:  preg_replace - Manual

$reg_exp = '/\[url\=([^\]]*)\]([^\[]*)\[\/url\]/is';
$value = preg_replace($reg_exp, '<a href="\1">\2</a>', htmlentities($value));
?

Das kannst du bestimmt auch leicht für [img] umbauen!
 
Zurück