Suche bestimmte RegExp für Parser

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Suche bestimmte RegExp für Parser

    Hallo zusammen,

    mein Parser nimmt langsam Gestalt an. Allerdings muss ich jetzt ordentlich nachbessern, da viele Datensätze (v.a. aus älteren Jahrzehnten) nicht so formatiert sind, wie ich gedacht hatte.

    Ich formuliere jetzt mal "umgangssprachlich" den Ausdruck, den ich benötige. Dabei soll __EGAL__ bedeuten, dass dieser Abschnitt komplett variabel sein darf (also entweder irgendeinen Inhalt oder keinen Inhalt hat). __NUTZDATEN__ ist der Part den ich extrahieren möchte.

    Code:
    <div__EGAL__class="__EGAL__section-__EGAL__"__EGAL__>__NUTZDATEN__</div>
    Und von diesen Elementen können mehrere im Dokument enthalten sein. Wäre super, wenn mir jemand (vllt. via http://regexp-evaluator.de/evaluator/) zeigen kann, wie ich dies bewerkstelligen kann.

    Vielen Dank und Grüße,
    Chris

    P.S. Hier noch ein Beispiel-File:

    Code:
    <div class="head1A section-title" id="id2591895">Abstract</div>
    <div class="head1A section-title" id="reference-sec">Selected References</div>
    <div class="head1 section-title" style="text-transform: none;" id="id2679636">References</div>

  • #2
    Tzz, du lieferst nicht mal nen Versuch? Projekthilfe, oder nachbessern, bitte.

    Hint: du erzählst hier was von "deinem Parser" und bist nicht in der Lage __EGAL__ durch .* zu ersetzen. Das kann man eigentlich als Regex-Grundlagen bezeichnen!
    Zuletzt geändert von TobiaZ; 08.09.2007, 21:26.

    Kommentar


    • #3
      Okay. Das "Beste", was ich hinbekommen habe ist folgendes:

      Code:
      #<div class=.*section-.*>([^<]*)</div>#is
      Hier der RegExp-Evaluator-Link: http://regexp-evaluator.de/evaluator...b74c/#ergebnis

      Ich kriege es nicht hin, dass die einzelnen (hier: 3) Section-Namen ausgegeben werden, sondern immer nur der letzte (hier: References). Ich weiß nicht weiter, wäre echt super, wenn mir jemand helfen könnte.

      Vielen Dank und Grüße,
      Christian

      Kommentar


      • #4
        ich dachte, du arbeitest mit xml?

        Kommentar


        • #5
          1. du hast das erste __EGAL__ vergessen
          2. __Nutzdaten__ ist natürlich auch .*
          3. Ungierig!

          Kommentar


          • #6
            4. Klammern

            Etwa so: http://regexp-evaluator.de/evaluator...f6da/#ergebnis

            Kommentar


            • #7
              viel zu viel...

              /<div.*class=\".*section-.*\".*>(.*)<\/div>/iU

              Kommentar


              • #8
                @TobiaZ und onemorenerd: super! :-) Ich danke euch recht herzlich für die Korrekturen! Jetzt bin ich (nach ca. 2 Monaten) endlich am Ziel!:-)

                @penizillin: ja, _auch_ xml! ;-) Ich hole mir ID-Listen aus riesigen XML-Files (Parser 1) und dann rufe ich (generiert aus diesen IDs) HTML-Seiten auf, aus denen ich dann verschiedenste Daten ziehe (Parser 2).

                Nochmal vielen Dank an alle und viele Grüße!
                Chris

                Kommentar

                Lädt...
                X