tutorials.de Buch-Aktion 05/2012
ERLEDIGT
NEIN
ANTWORTEN
2
ZUGRIFFE
240
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    DarkRaver DarkRaver ist gerade online Mitglied Gold
    Registriert seit
    Sep 2008
    Beiträge
    126
    Hallo,
    ich kenne ja die normale Regex, beispielsweise ">(.+)<" um zwischen den Tags auszulesen. Nun tut sich aber folgendes Problem auf:
    Code :
    1
    
    <font xyz="xyz">Test123<font zyx="zyx">Test456
    Und ab da ist Ende von dem String, warum keine schließenden Tags hat tiefere Gründe. Ich benötige nun eine Regex die mir "Test123" und "Test456" matcht.
    Ich hoffe ihr könnt mir dabei helfen.
     

  2. #2
    Avatar von Yaslaw
    Yaslaw Yaslaw ist offline n/a
    tutorials.de Moderator
    Registriert seit
    Dec 2007
    Ort
    Winterthur(CH)
    Beiträge
    5.205
    Soa ganze auf die Schnelle. Mit preg_repalce() die Tags durch ein trennzeichen ersetzen, mit explode() in einen Array schmeissen, mit array_filter() leere Einträge entfernen - fertig

    PHP-Code:
    $subject '<font xyz=\"xyz\">Test123<font zyx=\"zyx\">Test456';

    define('C_PATTERN''/(<[^>]+>)/U');
    define ('C_DELEMITER''#delemiter#');
    $result preg_replace(C_PATTERNC_DELEMITER$subject); 
    $items array_filter(explode(C_DELEMITER$result));
    print_r($items); 
    Ergibt:
    Code :
    1
    2
    3
    4
    5
    
    Array
    (
        [1] => Test123
        [2] => Test456
    )

    Es gibt sicher noch elegantere Lösungen
     
    ---------------------------------------------------------------------------------------------------
    item: Ich habe es mir aus gesundheitlichen Gründen abgewöhnt unformatierten Code zu lesen (Auch SQL-Statements kann man formatieren!)
    item: Tutorial: [PHP][MySQL] Debug Queries
    item: Schreibt mir keine PN mit Fragen die im Forum beantwortet werden können - ich mache kein persönliches coaching
    item: Bitte zur besseren Lesbarkeit PHP-Code in [PHP]...[/PHP], SQL in [SQL]...[/SQL], Visual Basic in [VB]...[/VB] etc. schreiben

  3. #3
    DarkRaver DarkRaver ist gerade online Mitglied Gold
    Registriert seit
    Sep 2008
    Beiträge
    126
    Vielen Dank!
    Läuft wunderbar, genau wie ich es möchte. Da die Funktion dynamisch mit unterschiedlichsten Strings verwendet wird hab ich noch ein addslashes hinzugefügt.
     

Ähnliche Themen

  1. Antworten: 15
    Letzter Beitrag: 19.12.10, 14:01
  2. Antworten: 3
    Letzter Beitrag: 22.08.08, 11:46
  3. RegEx - Zeilenanfang/ende
    Von rl_polo05 im Forum Algorithmen & Datenstrukturen mit Java
    Antworten: 1
    Letzter Beitrag: 12.03.08, 18:41
  4. Unbekannter Teil am ende eines Strings entfernen
    Von Planet_Mars im Forum .NET Archiv
    Antworten: 6
    Letzter Beitrag: 18.02.05, 13:37
  5. Antworten: 2
    Letzter Beitrag: 29.10.03, 13:05