![]() |
|
|
![]()
|
|
| stab |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 1839 Регистрация: 1.1.2003 Репутация: нет Всего: 48 |
Столкнулся с такой проблемой, на одном сайте пользователям разрешено вводить цвета строчкой, т.е. #FFFFFF - белый. Ограничений на вводимые данные никаких нет и пользователи навводили всякой фигни, вроде #RED666 и #YEWTE7, браузеры каким-то непонятным образом из этого вытягивают цвета #0ED666 и #0E00E7, и эти цвета устраивают пользователей, т.е. они их вроде как подобрали получается.
Встала задача привести их к нормальному виду не теряя информации. Никак не могу понять какой алгоритм применяется браузерами для вычленения цвета из этого мусора, например #YE6WTEZ34Y270F = #0E0E40. Присоединённый файл ( Кол-во скачиваний: 20 )
colors.gif 4,83 Kb-------------------- 6, 6, 6 - the number of the beast. |
|||
|
||||
| Walker |
|
||||||||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 363 Регистрация: 23.10.2006 Репутация: нет Всего: 16 |
На первый взгляд, всё, что непонятно (> F), равно 0.
Это сообщение отредактировал(а) Walker - 22.11.2007, 12:30 -------------------- "От вчерашних побед остаётся усталость, если завтрашний день не сулит ничего..." |
||||||||
|
|||||||||
| stab |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 1839 Регистрация: 1.1.2003 Репутация: нет Всего: 48 |
ага, меня тоже последний вариант в ступор вогнал.
-------------------- 6, 6, 6 - the number of the beast. |
|||
|
||||
| maxim1000 |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 3334 Регистрация: 11.1.2003 Где: Киев Репутация: 33 Всего: 110 |
вообще наводит на мысли RED - красный, YE - жёлтый, WTE - белый может, они это имели в виду? -------------------- qqq |
|||
|
||||
| stab |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 1839 Регистрация: 1.1.2003 Репутация: нет Всего: 48 |
maxim1000, да кто их знает что они там имеют в виду. Браузер явно это понимает не так, но как?!
-------------------- 6, 6, 6 - the number of the beast. |
|||
|
||||
| AlexST |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 331 Регистрация: 30.4.2006 Где: Москва Репутация: нет Всего: 3 |
stab, кинь ещё длинных примеров, типа последнего.
|
|||
|
||||
| stab |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 1839 Регистрация: 1.1.2003 Репутация: нет Всего: 48 |
AlexST, поэкспериментируй с обычным html файлом и фотошоповской пипеткой.
-------------------- 6, 6, 6 - the number of the beast. |
|||
|
||||
| AlexST |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 331 Регистрация: 30.4.2006 Где: Москва Репутация: нет Всего: 3 |
В Opera чётко видно: каждый неизвестный символ заменен на 0 (ну она всегда более логично работала
YE6WTE4Y270F = 0e600e (именно так у меня) 7ghjrk380mtg750f =700000 w1w1w1w1w1w1 = 010101 0YE6 = 00e600 но YE6 = 000e06 но принцип явно можно использовать (какие-то ошибки с маленькими строками начинаются). ИЕ и FF отжигают ужасно. Чем больше вариантов, тем непонятней (но т. к. они более популярны, именно так обрабатывать надо). YE6WTE4Y270F = 0e0e27 Y6WTE4Y270F = 06e470 7ghjrk380mtg750f = 703875 YE66 = 0e6600 но YE6 = 000e06 w111 = 011100 w1w1 = 010100 но w1w1w1w1 = 011001 w1w1w1w1w1w1 = 101010 Четкой логической закономерности не прослеживается, только общие принципы видны. Кажется код плохой и в результате мусор. |
|||
|
||||
| stab |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 1839 Регистрация: 1.1.2003 Репутация: нет Всего: 48 |
придётся скачать исходники ФФ.
-------------------- 6, 6, 6 - the number of the beast. |
|||
|
||||
| stab |
|
||||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 1839 Регистрация: 1.1.2003 Репутация: нет Всего: 48 |
в общем выкопал код из ФФ:
как видно, все сложности у нас возникли из-за странной группировки на равные компоненты, хотя из каждой группы учитываются только два первых символа. на C# получилось немного кривовато, но работает так же как ФФ:
-------------------- 6, 6, 6 - the number of the beast. |
||||
|
|||||
![]()
|
| Правила форума "Алгоритмы" | |
|
|
Форум "Алгоритмы" предназначен для обсуждения вопросов, связанных только с алгоритмами и структурами данных, без привязки к конкретному языку программирования и/или программному продукту.
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, maxim1000. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Алгоритмы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |