Sternchen im String macht Probleme

  • Hallo,

    folgendes Problem:
    Mein ItemName hat ein Sternchen "*" im String.
    Bei ItemName ohne Sternchen funktioniert mein Code, aber leider haben alle Items ein Sternchen im Namen.
    StringRegExp scheint damit ein Problem zu haben.

    Jemand eine Idee wie man das lösen kann?
    Ich hänge schon Stunden da dran und bin auch kein Profi muss ich zugeben.


    Code
    ...
    $Text = _IEBodyReadText($IE)
    $ItemName = "Ha*llo"
    $IsItemOnPage = StringRegExp($sText, $ItemName)
    ...

    Einmal editiert, zuletzt von cybrid (17. September 2013 um 09:47)

    • Offizieller Beitrag

    Das Sternchen hat bei RegExp einen Sonderstatus (Wiederholungszeichen) und muss deshalb "maskiert" werden. Das geschieht, indem man dem Sternchen einen Backslash voranstellt:

    [autoit]


    $sText = "ewriugreogijfdvlmnasdlfs wefwrejigored gregijredi Ha*llo gwergreijoj"
    $ItemName = "Ha*llo"
    $ItemName = StringReplace($ItemName, "*", "\*")
    $IsItemOnPage = StringRegExp($sText, $ItemName)

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

    ConsoleWrite($IsItemOnPage & @CR)

    [/autoit]