К списку форумов К списку тем
Регистрация    Правила    Главная форума    Поиск   
Имя: Пароль:
Рекомендовать в новости

[Помнящим 7.7] Как определить !точно!, что Тип(Значение)=Дата?

0 - 13.02.2015 - 21:37
где Значение = "Пр0113в0льная Стр0ка"
ваши предложения?
ЗЫ
Код:
Если НЕ(Дата(Значение) = Дата(0)) Тогда
не всегда работает))



Гость
41 - 17.02.2015 - 11:20
хе ;))) ну я так тожа умею - тогда вариант распарсивать строку через функцию или условие через вхождение символов - и длину строки проверять - только так , раз уж ты пихаешь такое ...
из серии длина строки и вхождение ("1234567890") и разделителя точку
Гость
42 - 17.02.2015 - 11:26
если интересует ТОЧНЫЙ способ, то мудрый Султонбек просил передать, что для решения подобной задачи можно сначала проверить строковое представление объекта на входе на предмет наличия в нем (т.е. в строковом представлении входного объекта) - ДВУХ ТОЧЕК (разделителей день/месяц/год), да еще дополнительно можно проверить наличие символов "точка" в нужных позициях
подобный алгоритм может даже Ягель написать, так что Султонбек уверен, что с практической реализацией трудностей не возникнет
43 - 17.02.2015 - 11:26
(41)
около так уже давно написана функция ЭтоДата(), эта ветка на интерес, вдруг кто смогет ;)
44 - 17.02.2015 - 11:28
(42)
тоже не читатель? ах, да, само собой))
45 - 17.02.2015 - 11:31
(43) "уже давно написана функция ЭтоДата(), эта ветка на интерес, вдруг кто смогет ;)" - в таком случает ты чудак на букву "М".
Гость
46 - 17.02.2015 - 11:36
просто как
Если СтрЗаменить(Значение," ","") <> Значение Тогда
//не дата
Иначе
Ц1 = Число(Сред(Значение,1,1));
Ц2 = Число(Сред(Значение,2,1));
Ц3 = Число(Сред(Значение,4,1));
Ц4 = Число(Сред(Значение,5,1));
Ц5 = Число(Сред(Значение,7,1));
Ц6 = Число(Сред(Значение,8,1));
Ц7 = Число(Сред(Значение,9,1));
Ц8 = Число(Сред(Значение,10,1));

Точка1 = Сред(Значение,3,1);
Точка2 = Сред(Значение,6,1);

Если (Точка1 <> ".") или (Точка2 <> ".") Тогда
// не дата
КонецЕсли;
Если (Ц3>1) Тогда
// не дата
КонецЕсли;
Если (Ц4 > 2) Тогда
//не дата
КонецЕсли;

ну и число осталось проверить, чтобы влазило в количество дней месяца года
топорно, но без вариантов - или дата или нет
47 - 17.02.2015 - 11:37
(45)
стесняюсь спросить, чЁйта? добро пожаловать науй я тоже умею писать...
(всем)
по теме пожалуйста, через Дата() и ее производные
Гость
48 - 17.02.2015 - 11:40
47-user1C > а, так вам шашечки...
49 - 17.02.2015 - 11:45
(48)
мне "без парсинга", быстро и надежно)
ну и "бывалым" наука будет все же...
50 - 17.02.2015 - 11:48
(47) Непонятно? Ладно, тогда анекдот, старый и несмешной, зато в тему: под конец рабочего дня к венерологу вваливается небритый мужик, молча расстегивает штаны и вываливает свой здоровенный причиндал на стол. Доктор усталым голосом: "Жалуетесь?" Мужик: "Хвастаюсь!"

Или, может, я чего-то не так понял?
51 - 17.02.2015 - 11:53
(50)
см (49), 2-ю строку ты познал - интересно ж было?))
"Или, может, я чего-то не так понял?" - все может быть...
52 - 17.02.2015 - 11:57
(51) "интересно ж было?))" - "Интересно за углом, как пойдещь - налево" (с )

А вот вы мне больше не интересны. Бывайте.
53 - 17.02.2015 - 12:10
(52)
мне хамло не интересно изначально, ни больше ни меньше...
"А с виду приличный человек..." (с)
54 - 17.02.2015 - 12:22
Странное какое-то "изначально": в 11:37, видимо, оно еще не наступило. Да и в 11:53 - тоже. Впрочем, странно ждать логики от человека, создавшего ветку лишь для того, чтобы похвастаться своей крЮтостью.
55 - 17.02.2015 - 12:38
(54)
странно видеть человека, который сперва "в теме", потом внезапно "не в теме"... действительно, странно
"Или, может, я чего-то не так понял?" - теперь становится абсолютной истиной))


К списку вопросов






Copyright ©, Все права защищены