Joachim: mit "preg_match_all" tabelleninhalt von externer stelle auslesen

Beitrag lesen

Hi,

preg_match_all(
  '~<td[^>]*>(.*?)</td>~',
  $werte2[0][0],
  $ausgabe,
  PREG_PATTERN_ORDER
);

im Prinzip passt das doch, mit
$str    =  "<table>
                <tr><td>Das ist ein <strong>fettes</strong> Brot!</td><td>das ist ein <i>schönes</i> Ding</td></tr>
                <tr><td>Das ist ein <strong>starkes</strong> Stück!</td><td>das ist eine <i>alte</i> Nudel</td></tr>
            </table>";

$regex  =  "#(<tr>)?<td>(.+?)</td>#";
preg_match_all ($regex, $str, $match);
print_r ($match) ;

bekommst Du diese Ausgabe
Array
(
    [0] => Array
        (
            [0] => <tr><td>Das ist ein <strong>fettes</strong> Brot!</td>
            [1] => <td>das ist ein <i>schönes</i> Ding</td>
            [2] => <tr><td>Das ist ein <strong>starkes</strong> Stück!</td>
            [3] => <td>das ist eine <i>alte</i> Nudel</td>
        )

[1] => Array
        (
            [0] => <tr>
            [1] =>
            [2] => <tr>
            [3] =>
        )

[2] => Array
        (
            [0] => Das ist ein <strong>fettes</strong> Brot!
            [1] => das ist ein <i>schönes</i> Ding
            [2] => Das ist ein <strong>starkes</strong> Stück!
            [3] => das ist eine <i>alte</i> Nudel
        )

Anhand der gefundenen tr's kannst Du jetzt die td's per row ausrechnen und Dein Array umsortieren...

Gruesse, Joachim

--
Am Ende wird alles gut.