Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP][preg_macht_all] Jeden raz
Forum PHP.pl > Forum > Przedszkole
raak07
Cześć
To mój kod
Kod
$tekst = '
<div style="border: 1pt solid windowtext; padding: 1pt 4pt;"><span style="font-size: 14pt;"><a href="/arch_pliki/file/DOWZ%20Derdowskiego.pdf"><img height="333" width="500" src="/arch_pliki/image/w01.jpg" alt="" /><br />
</a> <img height="333" width="500" src="/arch_pliki/image/w02.jpg" alt="" /></span></div>
';

$aa = '#/arch_pliki/image/(.*)(jpg)#';
preg_match_all($aa, html_entity_decode($tekst), $mat, PREG_SET_ORDER);
foreach ($mat as $val) {
    echo  str_replace('%20',' ',$val[0])."<br/>";
}

$aa = '#/arch_pliki/file/(.*)(pdf)#';
preg_match_all($aa, html_entity_decode($tekst), $mat, PREG_SET_ORDER);
foreach ($mat as $val) {
    echo  str_replace('%20',' ',$val[0])."<br/>";
}

mam problem z napisanie bardziej ogólnego(uniwersalnego) wyrażenia regularnego by działało dla róznych typ. plików(np.:gif,txt) oraz ścieżki dostępu po arch_pliki.
Proszę o pomoc.
P.S.
Moich prób nie umieszczam, to nie jest dział humoru.
Ilware
To jest wyrażenie regularne które zwróci pełny adres

  1. (src|href)=(.*)\.(jpg|pdf|jpeg)


potem tylko usuń początek ( src lub href )
raak07
Dziękuję za zainteresowanie oraz odpowiedź.
Widzę że sprawdzałeś na stronie tam ok ale...

Pozdrawiam
Ilware
nikt chyba nie pisze wyrażeń regularnych z palca, gdzieś musiałem je przetestować czy działają....
raak07
Hej
To że sprawdziłeś, świadczy tylko o poważnym podejściu do tematu przez Ciebie.
Po zastosowaniu Tojej propozycji - wyświetla href="/arch_pliki/file/DOWZ Derdowskiego.pdf">tu ramka obrazka.
Jeżeli (jpg|pdf|jpeg) zamienimy na (pdf) jest ok
Napisałe tak
Kod
\/arch_pliki\/(image|file)\/(.*)(jpg|gif|png|pdf)

ale też nie działa jak trzeba podobnie jak przy Twojej propozycji

Jeszcze raz dziękuję
Pozdrawiam
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.