Hilfe bei RegEx Pattern

  • Hallo,

    Ich benötige Hilfe bei einem RegEx Pattern. Folgende Zahl soll innerhalb einer Email gefunden werden.

    "SP-ID : 0000012345.678901"

    Diese 16-stellige Zahl befindet sich IMMER hinter der Buchstabenkombination "SP-ID :" Wie kann ich das als Kriterium für mein RegEx Pattern verwenden ?

    Gruß

  • Ehm ja wenn immer Diese Zahl da stehen soll, machs doch einfach mit StringInstr.. Ansonsten ->

    Spoiler anzeigen
    [autoit]

    $i = "SP-ID : 0000012345.678901"
    MsgBox(0,"",StringRegExp($i, "^SP-ID : [0-9]{10}.[0-9]{6}"))

    [/autoit]
  • hallo!
    Wieso eigentlich Regex?

    [autoit]

    if stringinstr($emailtext,"0000012345.678901")<>0 then msgbox(0,"","Zahl im Text enthalten")

    [/autoit]

    Die Autoitfunktionen sind meist wesentlich schneller wie die Regex. Und bei einfachen Suchen auch wesentlich unkomplizierterzu handeln...
    ciao
    Andy

  • [autoit]

    $string = "SP-ID : 0000012345.678901"
    $zahl = StringRegExp($string,"SP-ID : (.{17})",1)
    msgbox(0,"",$zahl[0])

    [/autoit]

    Zur Nutzung dieses Forum's, ist ein Übersetzer für folgende Begriffe unerlässlich:

    "On-Bort, weier, verscheiden, schädliges, Butten steyling, näckstet, Parr, Porblem, scripe, Kompletenz, harken, manuel zu extramieren, geckukt, würglich, excell, acces oder Compilevorgeng"

  • Nein die Zahl war nur exemplarisch.
    Hab das jetzt soweit, aber leider möchte ich nur die Zahl OHNE das einführende "SP-ID :"

    Code
    $i = "SP-ID : 0000012345.678901"
    $asResult=StringRegExp($i, "^SP-ID : [0-9]{10}.[0-9]{6}",1)
    MsgBox(0,"",$asResult[0])

    Geht das !?

    Edit : Der Lösungsvorschlag von Micha bringt das gewünschte Ergebniss, hierfür ein herzliches Dankeschön, auch an die anderen Supporter.

    Gruß

    • Offizieller Beitrag

    Du willst doch nur die Zahl haben, dann so:

    [autoit]

    $i = "SP-ID : 0000012345.678901"
    $asResult=StringRegExp($i, "SP-ID : ([0-9]{10}\.[0-9]{6})",1)
    MsgBox(0,"",$asResult[0])

    [/autoit]