Rolf B: preg_match_all was tun wenn die Daten nicht regelkonform sind?

Beitrag lesen

Hallo Hitzering,

wenn man mal das ganze nicht-strukturelle Brimborium wegnimmt, sieht man, dass hier geschachtelte DLs vorliegen, und das bringt deine Regex durcheinander.

<dl>
  <dd>[1] <a href="/w/index.php..." class="new">Blutsverwandte</a>,
          <a href="/wiki/Sippe" title="Sippe">Sippe</a>
    <dl>
      <dd>[1a] <a href="/wiki/Kernfamilie">Kernfamilie</a></dd>
      <dd>[1b] ... <a href="/wiki/Mischpoke">Mischpoke</a></dd>
    </dl>
  </dd>
  <dd>[2] <a href="/wiki/Abart">Abart</a>,
          <a href="/wiki/Rubrik">Rubrik</a>,
          <a href="/wiki/Schlag">Schlag</a>
  </dd>
</dl>

Eine Lösung in der Schublade habe ich nicht. Rekursive Regex gibt es, haben aber eine Form, die sich für meine Gehirnwindungen nicht zurechtbiegen lässt.

An Deiner Stelle würde ich den DOM Parser über das HTML Fragment jagen und das entstehende DOM rekursiv durcharbeiten.

Rolf

--
sumpsi - posui - clusi