Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Wyrażenia regularne
Forum PHP.pl > Forum > PHP
kociou1
Witam.

probuje napisać wyrazenia regularne usuwające z kodu html puste tagi np. takie:
  1. <b></b>, <p></p>

i mi nie wychodzi...
nie bardzo wiem jak stworzyć taki wzór który będzie usuwał tylko dwa takie same tagi a nie dwa różne np:
  1. <b></a> - nie usuwać biggrin.gif
  2. <b></b> - usuwać

jeśli ktoś rozwiązał ten problem prosze o wskazówki smile.gif
devnul
bys się troche przespał to sam byś rozwiązał smile.gif
  1. <?php
  2. $str=preg_replace("#<([^[:space:]]*)([:space:][^>]*[^/])?>[[:space:]]*</1>#si","",$str);
  3. ?>

powinno latać - pisane z palca

w zamyśle skrypt wyłapuje wszystkie tagi puste (łącznie z tymi które zawierają miedzy sobą tylko znaki białe i je wywala - skrytp pominie takie sekwencje znaków
Kod
<a/></a>
<a /></a>
<a cos /></a>
<a cos="a"/></a>
<a cos="b" /></a>

itd
natomiast zamieni takie
Kod
<a></a>
<a cos></a>
<a b="c"></a>

itd

można to oczywiscie jeszcze podrasowac - ale mi sie nie chce a sam pogłówkowac tez mozesz smile.gif
kociou1
Cytat(devnul @ 15.05.2007, 04:26:06 ) *
bys się troche przespał to sam byś rozwiązał smile.gif

A wiesz że możesz mieć rację smile.gif
a co do meritum odpowiedzi - jak na to spojrzałem zacząłem się zastanawiać czemu sam na to nie wpadłem smile.gif

wielkie dzięki!
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.