Имя: Пароль:
1C
 
Как определить является ли символ числом
0 gregs
 
15.02.11
12:56
Есть необходимость определить является ли символ из строки числом... Как можно организовать.
1 Ненавижу 1С
 
гуру
15.02.11
12:57
(0) Найти("0123456789",ТвойСимвол)>0
2 IamAlexy
 
15.02.11
12:58
попытка
числопля=число(мойсуперсимвол);
иначе
сообщить("пля.. это не число");
конецпопытки;
3 ДенисЧ
 
15.02.11
12:58
Строка(Число(символ)) = СокрЛП(символ);
4 vicof
 
15.02.11
12:58
попытка
символ = число(сред(стр, 1, 1))
исключение

конецпопытки
5 ДенисЧ
 
15.02.11
12:58
(2) Это 77, тут попытка не нужна...
6 Ork
 
15.02.11
12:59
(0)
Если (КодСимв()>=48) И (КодСимв()<=57) Тогда
   Сообщить("Ур-я-я-я!");
КонецЕсли;
7 Гефест
 
15.02.11
12:59
Подать заявку на финансирование начальству, добиться выделения денег, найти программиста, заключить с ним договор, дать ему техническое задание, проверить качество выполнения, подписать акт, заплатить деньги.

Вот вроде все основные организационные моменты
8 Mikeware
 
15.02.11
13:01
симвор числом являться не может. В лучшем случае - цифрой...
9 ДенисЧ
 
15.02.11
13:04
(8) ты хочешь сказать, что "1" - это не число? О_О...
10 Гефест
 
15.02.11
13:04
(9) Это строка...
11 gregs
 
15.02.11
13:05
во так работает

   Если (КодСимв(Лев(ДоговорСтрока,1))>=48) И (КодСимв(Лев(ДоговорСтрока,1))<=57) Тогда
               Сообщить("Ур-я-я-я! "+Число(Лев(ДоговорСтрока,1)));
           иначе
               сообщить("пля.. это не число");
           КонецЕсли;
12 ДенисЧ
 
15.02.11
13:05
(10) Это строковое представление числа :-)
13 dva1c
 
15.02.11
13:06
(7) Отличное ТЗ! Надо воплотить в жизнь! )))))))))
14 Mikeware
 
15.02.11
13:12
(9) "бэлый - это цвэт? цвэт! а чорний - это цвэт? Цвэт!!! А что ж абрам жалуется, что я продал ему не цветной тиливизер?"©
15 ДенисЧ
 
15.02.11
13:12
(14) И таки он пrав! Пrавда, и ты пrав тоже... :-)
16 palpetrovich
 
15.02.11
13:15
(11) мы не ищем простых путей :))
17 VladZ
 
15.02.11
13:20
(3) Самое простое решение...
(7) Самое правильное. (не забываем про откатинг и распилинг).
18 vde69
 
15.02.11
13:22
(3) - не работает, пример "1.00"
19 Ненавижу 1С
 
гуру
15.02.11
13:23
(18) это не символ
20 filh
 
15.02.11
13:24
(18) "1.00" <> символ
что по условию.
21 ДенисЧ
 
15.02.11
13:24
(18) "является ли символ из строки числом"
ТЗ надо внимательней читать :-)
22 1Сергей
 
15.02.11
13:26
Если (Симв>="0") И (Симв<="9") Тогда
23 Эльниньо
 
15.02.11
16:48
Если (Число(МойСимвол)) > 0
24 zak555
 
15.02.11
16:50
(23) "0" не число ? о_О
25 DrZombi
 
гуру
15.02.11
16:51
(2)Попытка лишняя :)
26 andrewks
 
15.02.11
16:51
(23) не взлетит
27 truba
 
15.02.11
17:02
СЗ_Числа = СоздатьОбъект("СписокЗначений");
СЗ_Числа.ИзСтрокиСРазделителем("""0"",""1"",""2"",""3"",""4"",""5"",""6"",""7"",""8"",""9""");
Результат = СЗ_Числа.НайтиЗначение(МойСимвол);
Если Результат = 0 Тогда
   Сообщить("не число");
Иначе
   Сообщить("Число: "+ Результат-1);
КонецЕсли;
28 truba
 
15.02.11
17:03
(27) Апдейт к 7й строчке может быть приобретен отдельно. цена вопроса 75 руб.
29 filh
 
15.02.11
17:09
+(23) Если Число(Символ+1) > 0
30 СноваЗдорова
 
15.02.11
17:12
В попытке Число - 0 можно попробовать
31 andrewks
 
15.02.11
17:14
(30) ышо раз: Попытка лишняя. ЭТО 7-КА
32 ДенисЧ
 
15.02.11
17:15
(31) Безполезно. Мозг уже вынесен...
33 СноваЗдорова
 
15.02.11
17:27
(31) я передумал, согласен с (3)
34 filh
 
15.02.11
17:32
+(3) Если ПустоеЗначение(Число(Символ)) = 0
35 anddro
 
15.02.11
17:41
(34) вернет 1 для "0", "0.00" и т.п.
36 andrewks
 
15.02.11
17:43
Функция ЭтоСтрокаЦифр(Стр) Экспорт
   Рез=0;
   Если Стр<>"" Тогда
       Если (СтрЗаменить(СтрЗаменить(СтрЗаменить(СтрЗаменить(СтрЗаменить(СтрЗаменить(СтрЗаменить(СтрЗаменить(СтрЗаменить(СтрЗаменить(Стр,"0",""),"1",""),"2",""),"3",""),"4",""),"5",""),"6",""),"7",""),"8",""),"9","")="") Тогда
           Рез=1;
       КонецЕсли;
   КонецЕсли;
   Возврат Рез;
КонецФункции
37 anddro
 
15.02.11
17:50
(36) нужна проверка на "." и "-". "." должна быть не более одного раза. "-" - только один раз. Наводит на мысль использовать RegExp. Сегодня точно не пятница?
38 truba
 
15.02.11
17:50
Процедура СкажиМнеПрограммаЯвляетсяЛиМойСимволЧислом(МойСимвол)
   Результат = "";
   Если Найти("0123456789",МойСимвол) > 0 Тогда
       Результат = "Определенно арабское число";
   КонецЕсли;
   Если Найти("MDCLXVI",МойСимвол) > 0 Тогда
       Результат = Результат + ПереносСтроки + "Вполне может являться римским числом";
   КонецЕсли;
   Если Найти("I/XЖ",МойСимвол) > 0 Тогда
       Результат = Результат + ПереносСтроки + "Возможно вы используете чувашские цифры";
   КонецЕсли;
   Если Результат = "" Тогда
       Результат = "не число нифига";
   КонецЕсли;
   Сообщить(Результат);
КонецПроцедуры
39 andrewks
 
15.02.11
17:53
(37) цифры от чисел отличаем? ты ещё скажи, что нужно учесть мнимые числа
40 andrewks
 
15.02.11
17:54
(38) ну-ка поподробней про чувашские цифры )
41 filh
 
15.02.11
17:57
(37) ТЗ читайте лучше!
42 filh
 
15.02.11
17:58
(40) местный диалект.
43 truba
 
15.02.11
18:01
(40) цифра - это символьное представление числа.
т.е. есть связка цифры, символа, числа.
Есть еще кирилические, майя, абджадия и символы культуры полей погребальных урн...
44 Dmitrii
 
гуру
15.02.11
18:02
(40) wiki:Чувашские_цифры
Тупой копи-паст:

Чувашские цифры, — древнее обозначение чисел, из тюркской рунической письменности, до сих пор используемое чувашами при нумерации брёвен в срубе.

Древние чувашские цифры появились по мнению учёных от счёта на пальцах. Чувашские числовые знаки имели внешнее сходство с римскими, но имели некоторые отличия. Если в римской записи большие числа стояли слева, то в чувашской — наоборот, справа.
45 truba
 
15.02.11
18:04
(44) точно точно, может в (0) разрабатывается конфа по автоматизации нумерации бревен в срубе
46 truba
 
15.02.11
18:05
(45) + для чувашей
47 andrewks
 
15.02.11
18:05
(44) спс, познавательно
48 1Сергей
 
15.02.11
18:11
Чего только не узнаешь на мисте
49 truba
 
15.02.11
18:13
пакет обновлений:
0123456789ABCDEF - шестнадцатеричные цифры
50 Dmitrii
 
гуру
15.02.11
18:14
Распознать такие цифры интереснее: wiki:Символы_культуры_полей_погребальных_урн

Тут придется сканер подключать и писать компоненту по распознаванию этих символов.
51 1Сергей
 
15.02.11
18:19
(49) куда высылать 75 руб?
52 truba
 
15.02.11
18:25
(51) блин... щас заплачу... дружище....
2 + 2 = 3.9999999999999999999999999999999...