Immer bestimmtes Zeichen aus String löschen...

  • Moin!

    Ich habe eine mehr oder weniger banales Problem. Ich habe einen variable der ein String ist und wie folgt aussehen kann:

    "10.245.55"

    oder

    "945.33"

    oder

    "4.34"


    Ich möchte nun, dass das erste "." (=Punkt) von rechts behalten wird und falls es einen zweiten Punkt gibt, dieser gelöscht wird, so dass die Werte wie folgt aussehen:

    "10245.55"

    bzw.

    "945.33"

    bzw.

    "4.34"


    Ich kriege das nicht hin :(

    Gruß

    argo

    Einmal editiert, zuletzt von argonautik (15. September 2011 um 01:13)

  • [autoit]

    $var1 = "10.245.55"
    $var2 = "945.33"

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

    ConsoleWrite(Ersetze2tenPunkt($var1) & @CR)
    ConsoleWrite(Ersetze2tenPunkt($var2) & @CR)

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

    Func Ersetze2tenPunkt($string)
    Local $sRet = $string
    Local $Pos = StringInStr($string, ".", 0, 2)
    If $Pos <> 0 Then
    $sRet = StringReplace($sRet, Int($Pos), " ")
    $sRet = StringReplace($sRet, " ", "")
    EndIf
    Return $sRet
    EndFunc

    [/autoit][autoit][/autoit][autoit][/autoit]
  • Oder wenns Kürzer sein soll dann so:

    [autoit]

    #include<String.au3>
    $zahl="10.245.55"
    $ohne = StringReplace($zahl, ".", "")
    $mit = _StringInsert($ohne, ".", -2)
    MsgBox(0, "Ergebnis", "Fertige Ausgabe: " & $mit)

    [/autoit]