Reguläre Ausdrücke

  • Hi,
    ich versuche gerade in einem String die Html-Tags von den Inhalten zu trennen. Ich habe das bisher mit einer zweifach geschachtelten explode()-Funktion realisiert, die mir die Werte in einem zweidimensionalen Array zur Verfügung stellt.
    Mit preg_match_all() oder preg_split() hab' ich's versucht, hab's aber nicht hingekriegt.

    Zitat

    <table width='250'><tr><td>Name:</td><td>Fischer</td></tr>
    <tr><td>Vorname:</td><td>Fritz</td></tr><tr><td>Email:</td><td>lala@lala.de</td></tr><tr><td style='vertical-align:top'>Mitteilung:</td><td>Der Fisch ist da.</td>
    </tr></table>

    Die rot bezeichneten Werte will ich extrahieren, der Rest sollte im Idealfall mit einem regulären Ausdruck entfernt werden. Geht das überhaupt? Wenn ja, wäre ich für Tipps dankbar.

    MfG
    6_freddy :)

  • Gern würde ich dir hier helfen, jedoch bin ich noch beim 1.Kapitel des wirklich sehr guten RegExp-Buch. Ich hoffe aber, dass dir jemand
    weiterhelfen kann, denn die Lösung wäre schon sehr interessant.

    Good Luck!

    "Carpe Diem" powered by positiv Feelings

  • links, die mir geholfen haben:

    http://www.phpbuilder.com/columns/dario19990616.php3
    http://cms.domainfactory.de/Regular_Express.1086.0.html
    http://www.tutorials.de/tutorials142738.html
    http://de.wikipedia.org/wiki/Regex


    habe jetzt keine zeit, das irgendwie zu erklären oder so :roll:

    aber deine expression wäre etwa so:

    <td.*?>(.*?)</td>
    das wählt jetzt alle TD's (<td irgendwelche="attribute">text</td>) aus. mit //1 kannst du den teil in der Klammer (.*?) ausgeben.

    aber schau dir mal die links und die php funktionen zu regex an =)

  • Hi,

    baloo:
    Danke erstmal für die Links, zwei davon hatte ich auch schon gefunden. Ich hatte auch schon die expression ganz ähnlich - /(<td)(.*)(<\/td>)/ nämlich. Aber ich hab' die Ausgabe der Ergebnisse von preg_match_all(), bzw. preg_slit() nicht kapiert. Das ist wohl ein Array aber was da an welcher Stelle steht, check' ich nicht. Für Tips bin ich dankbar.

    MfG
    6_freddy