Beh ma poi hai un array di stringhe di tutti gli elementi... Non so se il numero di elementi può variare (dipende ovviamente dal sorgente), ma potresti prendere le stringhe che ti interessano, del tipo
Codice PHP:
$s = explode('<b>', $contenuto);
$parte1 = substr($s[0], 3, (strpos($s[0], '</b>')=== false)?strpos($s[0], '</td>'):strpos($s[0], '</b>'));
$parteN = substr($s[0], 3, (strpos($s[N], '</b>')=== false)?strpos($s[N], '</td>'):strpos($s[N], '</b>'));
(ho fatto che cerca sia </b>, sia </td> perché ho visto che a volte </b> non c'é), ma non ho analizzato bene la pagina se ci son altri casi...
Non so però in termini di prestazioni se è meglio: so che le espressioni regolari non sono un gran ché, ma tra questo modo e l'altro non so quale sia il migliore...
p.s: non ho capito perché non puoi usare i metodi del DOM, che sono fatti apposta.
Ciao!