[php] url regex gaat mis met bold?

Pagina: 1
Acties:

  • TangLeFuzZ
  • Registratie: Juni 2001
  • Laatst online: 23-08 15:45
Hey,

de volgende url regexp werkt niet als je ook nog de bold tag gebruikt, als je bijvoobeeld dit doet (zonder underscores):

[b_]www.bla.com[_/b], dan werkt de regex niet, de url wordt niet vervangen.

Kan iemand me hiermee helpen?
PHP:
1
2
3
<?
  $inhoud = eregi_replace("(^|[ \n\r\t])(www\.([a-z0-9_-]+(\.[a-z0-9_-]+)+)(/[^/ \n\r]*)*)","\\1<a href=\"http://\\2\" target=\"_blank\">\\2</a>",$inhoud );
?>

  • dusty
  • Registratie: Mei 2000
  • Laatst online: 21-02 00:06

dusty

Celebrate Life!

omdat volgens je RegEx de www vooraf moet gaan met een spatie.
Maak er "[_b] www.hallo.nl[/b]" van en het werkt wel :P

Back In Black!
"Je moet haar alleen aan de ketting leggen" - MueR


  • RdeTuinman
  • Registratie: Mei 2001
  • Laatst online: 16-08 07:25
Ik ben geen held met regexen, maar als je nu niet eens kijkt naar wat er voor en achter de url staat?
PHP:
1
2
3
<?
$inhoud = eregi_replace("(www\.([a-z0-9_-]+(\.[a-z0-9_-]+)+)*)","<a href=\"http://\\1\" target=\"_blank\">\\1</a>",$inhoud );
?>

Is dat een probleem?

  • TangLeFuzZ
  • Registratie: Juni 2001
  • Laatst online: 23-08 15:45
Hmm,

kan iemand me dan misschien hier mee helpen?

De volgende regex werkt op zich goed, maar op een of andere vage manier geeft hij niet [ email=emailadres]emailadres[/ email] terug, maar:

[email= emailadres]
emailadres[/email]

En als hij dat doet dan gaat het dus mis, want dan werkt m'n [email] regex niet, EN hij gaat 'm nog een keer regexen als iemand z'n messie edit met diezelfde regex van hieronder.

Hoe kan dit?

[php]
$inhoud = eregi_replace("((^|[ \n\r\t])[a-z_-][a-z0-9\._-]*@[a-z0-9_-]+(\.[a-z0-9_-]+)+)","[email=\\1]\\1[/email]",$inhoud );
[/php

Verwijderd

Je wilt perse een newline voor het emailadres en omdat die niet tussen aparte haakjes staat zit die in dezelfde \\# als het adres zelf.

  • TangLeFuzZ
  • Registratie: Juni 2001
  • Laatst online: 23-08 15:45
Oja, ik zie het...maar die newline moet er wel in blijven anders krijg ik andere problemen.

Kan ik die er in de regex niet uithalen op een of andere manier?
Pagina: 1