StringRegExp Problem

  • Hallo Zusammen

    Irgendwie komme ich mit dem StringRegExp überhaupt nicht klar. Für Euch ist das sicher eine 10 Sekunden Übung!

    [autoit]

    #include <Array.au3>
    $String = 'Local $pLFile = xyz' & @CRLF & _
    'Local $pSrc = xyz' & @CRLF & _
    'Local $SHA1 = xyz'

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

    $Pattern = '(?i)(?s)(.*)Local $pSrc =(?-s)(.*)'
    $aTest = StringRegExp($String, $Pattern, 1)
    MsgBox(0,"",$aTest & " / " & @error)
    _ArrayDisplay($aTest)

    [/autoit]

    Ich möchte mit dem Pattern vom $String folgenden Teil zurückbekommen: Local $pSrc = xyz
    Wobei diese Zeile nicht zwingend auf der ersten oder zweiten Zeile stehen muss. Zudem ist alles nach dem Gleichheitszeichen variabel!
    Mit anderen Worten: Ich möchte den String haben, welcher mit Local $pSrc = beginnt und zwar soweit, bis das nächste @CRLF kommt.

    Vielen Dank für Eure Hilfe!
    Veronesi

    Einmal editiert, zuletzt von veronesi (25. Oktober 2011 um 12:58)

  • Hier:

    [autoit]

    #include <String.au3>
    $String = 'Local $pLFile = xyz' & @CRLF & _
    'Local $pSrc = xyz' & @CRLF & _
    'Local $SHA1 = xyz'

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

    $erg = _StringBetween($String,"Local $pSrc = ",@CRLF)
    MsgBox(0,"",$erg[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.