HelpF.pro

Функция проверяет наличие в строке только цифр учитывая лидирующие нули и пробелы

Код 1C v 8.х
 
// Параметры
// СтрокаПроверки - Строка для проверки только цифр
//
// Возвращаемое значение:
// Булево
//
Функция ТолькоЦифрыВСтроке(Знач СтрокаПроверки, УчитыватьЛидирующиеНули = Истина, УчитыватьПробелы = Истина) Экспорт

Если ТипЗнч(СтрокаПроверки) <> Тип("Строка") Тогда
Возврат Ложь;
КонецЕсли;

Если НЕ ЗначениеЗаполнено(СтрокаПроверки) Тогда
Возврат Истина;
КонецЕсли;

Если НЕ УчитыватьПробелы Тогда
СтрокаПроверки = СтрЗаменить(СтрокаПроверки, " ", "");
КонецЕсли;

Если НЕ УчитыватьЛидирующиеНули Тогда
НомерПервойЦифры = 0;
Для а = 1 По СтрДлина(СтрокаПроверки) Цикл
НомерПервойЦифры = НомерПервойЦифры + 1;
КодСимвола = КодСимвола(Сред(СтрокаПроверки, а, 1));
Если КодСимвола <> 48 Тогда
Прервать;
КонецЕсли;
КонецЦикла;
СтрокаПроверки = Сред(СтрокаПроверки, НомерПервойЦифры);
КонецЕсли;

Для а = 1 По СтрДлина(СтрокаПроверки) Цикл
КодСимвола = КодСимвола(Сред(СтрокаПроверки, а, 1));
Если НЕ (КодСимвола >= 48 И КодСимвола <= 57) Тогда
Возврат Ложь;
КонецЕсли;
КонецЦикла;

Возврат Истина;

КонецФункции

Опубликовано на сайте: https://HelpF.pro
Прямая ссылка: https://HelpF.pro/faq8/view/175.html