ich hab z.B. in $zeitrechnung eine Zahl die lautet 1.328
jetzt will ich die so in eine Variable umformatieren, daß sie so aussieht: 00132
also nur zwei Nachkommastellen und mit Vornullen. Insgesamt darf der String dann nur aus 5 Zahlen bestehen.
ich hab z.B. in $zeitrechnung eine Zahl die lautet 1.328
jetzt will ich die so in eine Variable umformatieren, daß sie so aussieht: 00132
also nur zwei Nachkommastellen und mit Vornullen. Insgesamt darf der String dann nur aus 5 Zahlen bestehen.
Deine Zahl wird aber ohne Punkt dargestellt, oder?
[autoit]$str = '1328'
MsgBox(0, 'Formatierte Ausgabe', StringFormat('$str = %05i', StringLeft($str, 3)))
Edit:
Falls der Punkt ein Komma sein sollte gehts so:
$str = 1.328
MsgBox(0, 'Formatierte Ausgabe', StringFormat('$str = %05i', StringLeft($str*1000, 3)))
funktioniert fast richtig, aber die $zeitrechnung kann auch so lauten 1.1234645 oder 11.165154
Es können maximal 3 Vorkommastellen kommen, aber die Nachkommastellen, sind variabel. und ich brauche die zahl mit zwei Nachkommastellen.
OK, hiermit funzt es:
[autoit]$str = 11.165154
$str = StringSplit($str, '.')
MsgBox(0, 'Formatierte Ausgabe', StringRight('00' & $str[1] & StringLeft($str[2], 2), 5))
Erklärung:
- splitten in Teilstrings am Komma
- vom Nachkommateil werden die linken 2 Zeichen genommen
- neuer String wird gebildet aus 2 Vornullen & Vorkommastring & gekürztem Nachkommastring
- von diesem String werden die rechten 5 Zeichen verwendet
Somit kann der Vorkommateil variabel zwischen 0 und 999 sein.
Vieln Dank funktioniert super!