Reguläre Ausdruck. Komme nicht weiter

  • Hi,
    könnt Ihr mir bitte helfen?
    Komme einfach nicht weiter.

    Wie schaffe ich es die Adressen in ein Array zu bekommen?

    class="adress">Rathausplatz 5<br/>90403 Nürnberg<br/><a href="&#10;
    Kontakt</h3><p class="adress">Äußere Bayreuther Str. 121<br/>90409 Nürnberg<br/><a href="&#10
    </span></p><h3>Kontakt</h3><p class="adress">Wallensteinstraße 28<br/>90439 Nürnberg<br/><a href="&#10;
    </span></p><h3>Kontakt</h3><p class="adress">Glogauer Str. 30 - 38<br/>90473 Nürnberg<br/><a href="&#10;

    es soll mir immer die Adresse herausfiltern.

    So weit bin ich gekommen...... Bin total überfordert..

    $regexp = StringRegExp($Dateiinhalt_aponet, '"adress">', 3)


    Vielen Dank

    Rici

  • Hi

    Versuch es mal so:


    mfg

    Zeitriss

  • Alternativ könnte man auch erst die <br>s in Zeilenumbrüche wandeln damit danach die Behandlung etwas einfacher wird:

  • Vielen Dank.

    Ist echt der Hammer wie ihr das drauf habt.....

    Ich versuche mal nachzuvollziehen wie Ihr das gemacht habt.

    Habt Ihr da ein spezielles Programm?

    Liebe Grüße

    Rici

  • Alternativ könnte man auch erst die <br>s in Zeilenumbrüche wandeln damit danach die Behandlung etwas einfacher wird:

    Wie mach ich das nun zwischen der Hausnummer und der Postleitzahl ein / steht?? Ich blicke das nicht.. Im Array meine ich.

    #include <Array.au3>

    $sString = 'class="adress">Rathausplatz 5<br/>90403 Nürnberg<br/><a href=" ' & @CRLF & _
    'Kontakt</h3><p class="adress">Äußere Bayreuther Str. 121<br/>90409 Nürnberg<br/><a href="' & @CRLF & _
    '</span></p><h3>Kontakt</h3><p class="adress">Wallensteinstraße 28<br/>90439 Nürnberg<br/><a href="' & @CRLF & _
    '</span></p><h3>Kontakt</h3><p class="adress">Glogauer Str. 30 - 38<br/>90473 Nürnberg<br/><a href="'
    $aArray = StringRegExp(StringRegExpReplace($sString, "<br/?>", @CRLF), '(?s)class="adress">(.+?)<', 3)

    _ArrayDisplay($aArray)

    Einmal editiert, zuletzt von Rici64 (5. Juli 2016 um 12:57)

  • Einfach statt @crlf nen " / " dort rein und aus dem array die letzten 3 zeichen entfernen (da dort ja auch ein br war).

  • Habt Ihr da ein spezielles Programm?

    ja, bei komplizierteren RegEx benutze ich das gerne -> https://regex101.com
    Die Erklärungen helfen weiter und auch das Registerzur Anzeige der Tokens ist hilfreich...ich bin schließlich schon alt, da muss man nicht mehr alles im Kopf haben..
    "Wissen ist wissen, wo es steht!"

  • Alternativ könnte man auch erst die <br>s in Zeilenumbrüche wandeln damit danach die Behandlung etwas einfacher wird:

    Hi,
    Ich bin wieder an diesem Problem... Ich schaffe es einfach nicht.
    Ich bräuchte nun alles in einem 3d Arrad, aber getrennt in spalten: Also Spalte 1 Anschrift, Spalte 2 plz und Spalte 3 Ortschaft.

    Würde mir noch jemand helfen?
    Vielen Dank.

    • Offizieller Beitrag

    Bitte (ist aber nicht 3D - sondern 2D mit 3 Spalten :whistling: ) :

  • Man kann auch die Stringfunktionen dafür verwenden:

    ironischerweise verwendet _StringBetween intern auch StringRegExp man muß sich aber nicht selbst mit Patterns herumschlagen.

    Einmal editiert, zuletzt von autoBert (17. August 2016 um 15:15) aus folgendem Grund: Kommentare hinzugefügt