Проверка тестового поля на наличие только цифр

  • Автор темы Автор темы Xalet
  • Дата начала Дата начала
X

Xalet

Есть поле типа намбер. Мне нужно чтобы пользователь мог вводить числа начинающиеся с нуля, как пример 0000124. Ноутсы все нули отбрасывают. Можно ли как-то задать возможность вводить именно с нулями? Или надо с текстом извращаться?
 
000124 - Какой же это номер?
Это как раз текст :)
 
Да мне собственно форматить и не нужно. Мне нужно вводить и проверять... В общем разные у нас с АйБиЭмом представления о номерах... Текст так текст...

Всем спасибо за ответы.
 
Проверить можно с помощью оператора Like на QuerySave например.
 
@ToNumber(value) Почему эта функция работает так же, как и @TextToNumber(value).
Т.е. @ToNumber(555рр55) вернет 555, а не ошибку, как указано в хелпе?
 
@ToNumber(pp55555) должно вернуть ошибку, а в твоём случае он заескейпит символы.
Кажись так было.
 
Может, попытаться сделать проверки на цифры с помощью @Matches, раз уж пошли в дело собаки?
 
Проверку то я сделал... Есть @IsNumber на собаках, хоть я на ЛС все и переписал.
Но почему @ToNumber работает именно так остается загадкой.
 
Если меня не подводит склероз, @IsNumber вернет @true только для числа.
Текст, содержащий число как строку, он так не обработает.
 
Если меня не подводит склероз, @IsNumber вернет @true только для числа.
Текст, содержащий число как строку, он так не обработает.
Очень странно. Потому как аналог ЛС Isnumeric работает и со стрингами. Тем хуже любителям собак.
 
Visual Basic:
%REM
    Function IsDigital
    Description: проверяет, являются ли все элементы переданной строки цифрами
%END REM
Function IsDigital(sValue As String) As Boolean
    IsDigital = (sValue Like UString(Len(sValue), "#"))
End Function
 
  • Нравится
Реакции: lmike и alexas1
Visual Basic:
%REM
    Function IsDigital
    Description: проверяет, являются ли все элементы переданной строки цифрами
%END REM
Function IsDigital(sValue As String) As Boolean
    IsDigital = (sValue Like UString(Len(sValue), "#"))
End Function
два вопроса:
- почему возникло желание поднять тему :)
- почему ЛС, когда тему а про собаки ;)

ЗЫЖ я даже не задумывался про такое применение юникодовых ф-ций
 
Самому понадобилось, поискал в инете - нет, зашёл сюда, перелопатил - нет. Написал сам, ну и запостил сюда. Всё просто :)
А на LS... Выше камрад Omh писал про анализ на QuerySave, а это LS, и как раз мой случай (номера телефонов). Просто надо было куда-то всобачить этот код, а по теме подходит :)
Да и меня сейчас особо не парит выкладывать код (если за него не стыдно))) - не жалко, т.к. уже не в софтверной конторе работаю.

Ну ещё, походу, несколько похожих сообщений и тем перетасовал и удалил ненужные.

ЗЫЖ: а я давно заметил, и иногда использую как Repeat.
 
Последнее редактирование:
  • Нравится
Реакции: lmike
А чем вам штатные функции не угодили?

+
 
А чем вам штатные функции не угодили?
+
, - здесь выше уже было писано, возвращает 1 только для числа, а не для текста, содержащего числа;
, -здесь выше уже было писано, молча перегоняет в число, отбрасывая всё, после первого символа, не являющегося цифрой.
- возвращает True, если в тексте содержатся "+", "-", "E" и десятичный разделитель, установленный в системе.
Кроме того @-формулы требуют Evaluate, а зачем он, если мне нужен LS?
 
  • Нравится
Реакции: alexas1
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!