RegEx Bereich von bis

  • Hallo,

    ich habe eine generelle Frage zu RegEx.
    Die Suchmuster arbeiten ja alle zeilenorientiert!
    Wenn ich einen Quelltext durchsuche
    dann wird der kpl. Quelltext abgearbeitet.

    Meine Frage:

    Wie kann ich z.B. per regex sagen
    1. Suche von kpl. Quelltext nur von hier bis hier (mehrere Zeilen) also ein Block!
    2. Dann wende ein RegExMuster an

    Spoiler anzeigen


    $arrayfilter = StringRegExp($sSource, 'margin(.*?)', 3)

    Beispiel:
    durchsuche nur den Head Bereich v. Google
    Quelltext ist in der Zwischenablage

    Spoiler anzeigen
    [autoit]


    #include <Array.au3>
    $sSource=ClipGet()

    [/autoit] [autoit][/autoit] [autoit]

    $arrayfilter = StringRegExp($sSource, '<head>(.*?)</head>', 3)
    _ArrayDisplay($arrayfilter, "Array Auswertung")

    [/autoit] [autoit][/autoit] [autoit]

    For $i = 0 To UBound($arrayfilter) - 1
    $test = $arrayfilter[$i]
    Next
    ;MsgBox(0,"",$test)
    _ArrayDisplay($test, "Array Auswertung")

    [/autoit]

    Wieso wird da nichts gezeigt?


    Liebe Grüße
    Ilse ;)

    Einmal editiert, zuletzt von Ilse (26. Juli 2011 um 13:59)

  • So gehts:

    Spoiler anzeigen
    [autoit]

    #include <String.au3>
    $sSource=ClipGet()

    [/autoit] [autoit][/autoit] [autoit]

    $arrayfilter = _StringBetween($sSource,"<head>","</head>")

    [/autoit] [autoit][/autoit] [autoit]

    MsgBox(0,"",$arrayfilter[0])

    [/autoit]

    Andy hat mir ein Schnitzel gebacken aber da war ein Raupi drauf und bevor Oscar das Bugfixen konnte kam Alina und gab mir ein AspirinJunkie.