Odczyt zawartosci komorki tabeli HTML

Odczyt zawartosci komorki tabeli HTML
RH
  • Rejestracja:prawie 14 lat
  • Ostatnio:prawie 13 lat
  • Postów:7
0

Witam, mam taki mały problem. Posiadam strukturę html

Kopiuj
<tr>
	<td>
		<div>djask jasd l <b>dksa</b></div>
	</td>
</tr>

i chodzi o to, żeby wydobyć z td tekst. Potrzebny mi jest sam tekst. Używwam takiego wzorca:
'#>([^/<]+)<\/#'
jeśli w tekscie nie byłoby b wyciągnąłby mi go odpowiednio, niestety tak nie jest. Tekst jest zmienny, zamiast div moze byc p albo span a zamiast b strong.

Pomożecie ?

edytowany 2x, ostatnio: Adam Boduch
LO
  • Rejestracja:około 17 lat
  • Ostatnio:prawie 13 lat
0

Ja bym wyciągnął komórki tabeli takim wzorcem:

Kopiuj
$pattern = '/<td>(.*?)<\/td>/s'; 

A następnie dla każdej znalezionej komórki jej zawartość bym drugi raz filtrował pod różne tagi i wyłuskiwał z nich sam tekst. Można to pewnie zrobić rekurencyjnie jakoś porządnie też :)

SI
ja bym tylko początek zmienił na <td[^>]*> - tak profilaktycznie ;]
unikalna_nazwa
  • Rejestracja:ponad 14 lat
  • Ostatnio:prawie 10 lat
1

nie za bardzo zrozumiałem
ale jeżeli po prostu chcesz z powyższego tekstu uzyskać tekst

djask jasd l dksa

to wystarczy użyć funkcji strip_tags()


Pół giga extra na dropboxie? Pół giga extra na dropboxie! Tyle wygrać! >>Klik here<<
JM
  • Rejestracja:ponad 15 lat
  • Ostatnio:ponad 10 lat
0

Dokładnie. Jeśli chcesz sam tekst to wpierw wyciagasz wszystko pomiedzy </td> a potem robisz striptags

Kopiuj
$content = "<tr>
        <td>
                <div>djask jasd l <b>dksa</b></div>
        </td>
</tr>";

$reg = '#<td>(.*?)</td>#is';



if(preg_match($reg,$content,$match))
{

    echo strip_tags($match[1]);
    
    
    
}


 
edytowany 1x, ostatnio: JimMorrison

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.