Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [php][regExp] Html->BBCode
Forum PHP.pl > Forum > PHP
Spirit86
Witam

Jakiś czas temu wpadłem na pomysł, jak przyspieszyć proces tworzenia strony. Postanowiłem, że cała obróbka BBCode będzie wykonywana przed dodaniem do Bazy Danych.

Problem pojawił się oczywiście przy np. Edycji, musze tak skonstruować wyrażenia, aby wyrażenia ponownie były zamieniane na BBCode. Jest z tym trochę zabawy, ale myślę, że się opłaci.

Mam wyrażenia reg., które zamieniają poszczególne łańcuchy znaków:


Kod
http://adres.pl/ =><a href="http://adres.pl/" target="_blank">http://adres.pl/</a>
www.adres.pl=><a href="http://www.adres.pl/" target="_blank">http://www.adres.pl/</a>
[url]http://adres.pl/[/url] => =><a href="http://adres.pl/" target="_blank">http://adres.pl/</a>
[url=http://adres.pl/]opis[/url] =><a href="http://adres.pl/" target="_blank">opis</a>


i teraz chcę zamienić wszystko typu:
Kod
<a href="http://adres.pl/" target="_blank"> na http://adres.pl/</a> na [url]http://adres.pl[/url],

Kod
<a href="http://adres.pl/" target="_blank">opis</a>=>[url=http://adres.pl/]opis[/url]
[/CODE]
itd.

Coś jednak mi z tym nie wychodzi, moje wyrażenie:
  1. <?php
  2. $ret = preg_replace( "#<a href=[\"'](*.?)[\"'] target=\"_blank\">(*.?)</a>#si", "" , $ret);
  3. ?>

Próbowałem jeszcze kilku innych, jednak żadno z nich nie działało, proszę o pomoc.
Szczególnie ważne jest, aby jeżeli href jest różny od opisu, żeby powstał opis

Pozdrawiam
bendi
Cytat(Spirit86 @ 2006-03-29 15:12:42)
Problem pojawił się oczywiście przy np. Edycji, musze tak skonstruować wyrażenia, aby wyrażenia ponownie były zamieniane na BBCode. Jest z tym trochę zabawy, ale myślę, że się opłaci.

A nie lepiej przechowywać równolegle bbCode i tekst wynikowy, który będzie podmieniany z BBCode w przypadku edycji.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.