Hallo zusammen
hab mal schon wieder ein Anfängerproblem, bei dem ich nicht weiterkomme. Wäre froh, wenn mir jemand helfen könnte: Es geht um die gleiche Sache, bei der mir Oscar gestern schon half. Das Script soll aus einem String Name und Vorname auslesen, was dank Oscar soweit klappt. Nun sollen beim Namen Umlaute eingefügt werden, was auch klappt. Dann soll der aktualisierte Namen wieder in den String gesetzt werden, wo vorher schon der Name ohne Umlaute stand.
Dazu bin ich nun so weit:
Local $insText = ClipGet()
Global $Name = StringRegExpReplace($insText, '(?s).+Name / Vorname\v+(.+?)\v.*', '$1')
Global $NameAlt = $Name
;~ MsgBox($MB_OK, "", $NameAlt)
Global $aReplaceChars[8][2] = [[7],['AE','Ä'],['OE','Ö'],['UE','Ü'],['ae','ä'],['oe','ö'],['ue','ü'],['ß','ss']]
For $i = 1 To $aReplaceChars[0][0]
$Name = StringReplace($Name, $aReplaceChars[$i][0], $aReplaceChars[$i][1], 0, 1)
Next
MsgBox($MB_OK, "", $Name)
If StringReplace($insText, $NameAlt, $Name) Then MsgBox($MB_OK, "", "Konnte String aktualisieren")
Alles anzeigen
Anhand der eingebauten Textausgaben konnte ich feststellen, dass alles klappt und beim Namen die Umlaute gesetzt werden. Dann zum Schluss erhalte ich auch die Erfolgsmeldung, dass der String aktualisiert wurde, das ist aber nicht der Fall. Aber woran das liegt, krieg ich irgendwie nicht raus, hab ich bei StringReplace() was falsch konfiguriert?
Bin für jede Hilfe dankbar.
Gruss Dani