- Сообщения
- 7,790
- Репутация
- 2,322
Насколько я понимаю, функция StringIsFloat($sString) должна возвращать 1 если в $sString присутствуют только цифры и одна точка.
Следующий код возвращает у меня 1 в каждой первой строке MsgBox:
Абослютно одинаковый результат у меня получился при проверке на 3-х Windows XPx32 и на 1-ой Windows 7х64.
Получается, что девять русских букв StringIsFloat() принимает за цифры.
Это баг или что?
Следующий код возвращает у меня 1 в каждой первой строке MsgBox:
Код:
Dim $aRusFloat[10] = [9, '12.ц', '23.ы', '34.ч', '45.р', '56.т', '67.я', '78.м', '89.и', '91.ь']
Dim $aRusNotFloat[10] = [9, '12.ф', '23.в', '34.й', '45.п', '56.о', '67.ш', '78.з', '89.д', '91.ю']
For $i = 1 To $aRusFloat[0]
MsgBox(64, $i, 'StringIsFloat(' & $aRusFloat[$i] & ') = ' & StringIsFloat($aRusFloat[$i]) & @CRLF & _
'StringIsFloat(' & $aRusNotFloat[$i] & ') = ' & StringIsFloat($aRusNotFloat[$i]), 2)
Next
Абослютно одинаковый результат у меня получился при проверке на 3-х Windows XPx32 и на 1-ой Windows 7х64.
Получается, что девять русских букв StringIsFloat() принимает за цифры.
Это баг или что?