Hi,
Ich habe ein eigenartiges Problem mit StringReplace
z.B. Hier:
Spoiler anzeigen
#include <String.au3>
[/autoit] [autoit][/autoit] [autoit]$sString1 = "ASinh(9)"
$sString1 = StringReplace($sString1, "ASinh(", "_ASinh(")
MsgBox(0, "", $sString1)
$sString2 = "ASinh(9)"
MsgBox(0, "", _Replace($sString2))
Func _Replace($sString)
Local $sReplace
$sReplace = StringReplace($sString, "Sinh(", "_Sinh(")
$sReplace = StringReplace($sReplace, "ASinh(", "_ASinh(")
$sReplace = StringReplace($sReplace, "Cosh(", "_Cosh(")
$sReplace = StringReplace($sReplace, "ACosh(", "_ACosh(")
$sReplace = StringReplace($sReplace, "Tanh(", "_Tanh(")
$sReplace = StringReplace($sReplace, "ATanh(", "_ATanh(")
$sReplace = StringReplace($sReplace, "²", "^2")
$sReplace = StringReplace($sReplace, "³", "^3")
$sReplace = StringReplace($sReplace, ",", ".")
If StringInStr($sReplace, "Ran(") Then
$sRandomMax = _StringBetween($sReplace, "Ran(", ")")
If IsArray($sRandomMax) Then
For $i = 0 To UBound($sRandomMax) - 1
$sReplace = StringReplace($sReplace, "Ran(" & $sRandomMax[$i] & ")", "Random(0, " & $sRandomMax[$i] & ", 1)", 1)
Next
Else
Return SetError(1, 0, 0)
EndIf
EndIf
If StringInStr($sReplace, "ggT(") Then
$sReplace = StringReplace($sReplace, "ggT(", "_Euclid_Algorithm(")
$sReplace = StringReplace($sReplace, ";", ",")
EndIf
Return $sReplace
EndFunc ;==>_Replace
In der 1. MsgBox wird es richtig augegeben _Asinh(9) in der 2. MsgBox steht dann aber A_Sinh. Wie kann man das lösen oder wo liegt mein Fehler?