![]() |
Модераторы: LSD, AntonSaburov |
![]() ![]() ![]() |
|
LSD |
|
||||||
![]() Leprechaun Software Developer ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 15718 Регистрация: 24.3.2004 Где: Dublin Репутация: 210 Всего: 538 |
Тогда начнет прокатывать "гре
Еще как охота будет, это же такой азартный спорт ![]()
Конечно, но надо дать возможность администратору самому добавлять новые извороты пользователей в фильтр. Я считаю что важнее разработать нормальную, хорошо расширяемую систему анализа и фильтрации текста, а не пытаться предусмотреть сейчас все варианты. И не надо зацикливаться на русском и английском, есть и другие языки, это тоже надо учесть. -------------------- Disclaimer: this post contains explicit depictions of personal opinion. So, if it sounds sarcastic, don't take it seriously. If it sounds dangerous, do not try this at home or at all. And if it offends you, just don't read it. |
||||||
|
|||||||
Domestic Cat |
|
||||||||||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 5452 Регистрация: 3.5.2004 Где: Dallas, US Репутация: 50 Всего: 172 |
Ну тут уже надо учить программу понимать смысл предложения, а иначе не получится. Ведь можно тогда ругаться : греБЛЯ!!!
Ну это уже будет ерунда, особенно если убрать основное.
В аттачменте словари задаются в отдельных текстовых файлах - добавляй что хочешь.
Тут проблем нет, за секунду можно добавить. Единственное что требуется - словари.
А предложенный вариант - это не система фильтрации текста? 1. Переводим все в нижний регистр. 2. Выбрасываем "безопасные" символы типа . , и пробелы, из которых мат не составишь 3. Повторяющиеся буквы убираем (точнее, они сохраняются как children в предшествующей Pair, чтоб убрать слова типа CcccRRRAAAPP) 4 В зависимости от языка трансформируем часто применяемые обозначения/транслит в буквы 5. Заменяем слова из словаря на **** Без словарей тут не обойтись. Кроме того, все возможные варианты все равно не отловим. С каждой новой проверкой добавляются тормоза, потому нужно остановиться на отлавливании основного. -------------------- |
||||||||||
|
|||||||||||
sergejzr |
|
|||
![]() Un salsero ![]() Профиль Группа: Админ Сообщений: 13285 Регистрация: 10.2.2004 Где: Германия г .Ганновер Репутация: 6 Всего: 360 |
Тормоза - финя.
Проверок можно разных сделать и несколько раз по тексту пробежаться. Почему бы непрогить несколько вариантов параллельно? LSD, Где твой алгоритм? |
|||
|
||||
LSD |
|
|||
![]() Leprechaun Software Developer ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 15718 Регистрация: 24.3.2004 Где: Dublin Репутация: 210 Всего: 538 |
Вот мои приблизительные наметки по поводу данного фильтра.
Критика приветствуется ![]() Присоединённый файл ( Кол-во скачиваний: 10 ) ![]() -------------------- Disclaimer: this post contains explicit depictions of personal opinion. So, if it sounds sarcastic, don't take it seriously. If it sounds dangerous, do not try this at home or at all. And if it offends you, just don't read it. |
|||
|
||||
Domestic Cat |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 5452 Регистрация: 3.5.2004 Где: Dallas, US Репутация: 50 Всего: 172 |
Как я понял суть в том чтобы была возможность подключать произвольные фильтры/токенайзеры.
1. Зачем нужны токенайзеры, я не понял. 2. Подключать фильтр - идея хорошая, если бы речь шла о фильтрации различных типов слов; например одинт фильтр - для мата, другой - для слов с сексуальной окраской, и т п. Опыт показывает что в основном нужен антиматовый фильтр. Потому фильтры-плагины идея конечно гут, но зачем она тут не представляю. Действие фильтров не обязательно складывается. Это если б один фильтр отдсекал слова "дурак" и "козел", а второй слово - "гад", то да. Но чтобы отловить мат нужно сначала как-то преобразовать исходный текст. Суть состоит в наиболлее оптимальном выборе алгоритма. Если же алгоритм разный то после действия одного фильтра действие другого практически равно 0. ------------ Единственный кто стянул мой код - ну как, есть замечания? -------------------- |
|||
|
||||
sergejzr |
|
||||
![]() Un salsero ![]() Профиль Группа: Админ Сообщений: 13285 Регистрация: 10.2.2004 Где: Германия г .Ганновер Репутация: 6 Всего: 360 |
Ага, не компилируется ![]() Но это мои проблемы. Сейчас некогда решать...
Это будет видно. тем более, что я предлагаю использовать не последовательно, а параллельно. На вуходе массивы - keys как я описывал. Просто не один, а несколько. Потом решаем (чего нить придумаем), какие интервалы фильтровать. PS: Дело в том что наши концепты (мой, твой и LSD) практически друг другу не мешают, но дополняют ![]() |
||||
|
|||||
Domestic Cat |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 5452 Регистрация: 3.5.2004 Где: Dallas, US Репутация: 50 Всего: 172 |
Т.к. нужна 1.5. Переделать в 1.4? -------------------- |
|||
|
||||
LSD |
|
||||||||
![]() Leprechaun Software Developer ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 15718 Регистрация: 24.3.2004 Где: Dublin Репутация: 210 Всего: 538 |
Если нет веских причин использовать 1.5, то конечно лучше переделать. Ниже 1.4 имхо не стоит делать, т.к. там регекспов нет.
Пока попробуем довести до ума каждый свой вариант (у меня даже не все классы пока есть) а там решим.
В принципе на данный момент достаточно одного Tokeniser-а, просто правила разбики на токены могут быть разными, вот я и ввел его на всякий случай, в принципе его можно выкинуть.
Мне хотелеось реализовать более универсальную идею фильтрации, вот я и сделал это через плагины. -------------------- Disclaimer: this post contains explicit depictions of personal opinion. So, if it sounds sarcastic, don't take it seriously. If it sounds dangerous, do not try this at home or at all. And if it offends you, just don't read it. |
||||||||
|
|||||||||
sergejzr |
|
||||
![]() Un salsero ![]() Профиль Группа: Админ Сообщений: 13285 Регистрация: 10.2.2004 Где: Германия г .Ганновер Репутация: 6 Всего: 360 |
Да, будет лучше.
![]() ИМХО лучше умно в кучу собрать. |
||||
|
|||||
LSD |
|
|||
![]() Leprechaun Software Developer ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 15718 Регистрация: 24.3.2004 Где: Dublin Репутация: 210 Всего: 538 |
Есть идеи как? Я пока не вижу как, хотя код Domestic Cat пока не смотрел. -------------------- Disclaimer: this post contains explicit depictions of personal opinion. So, if it sounds sarcastic, don't take it seriously. If it sounds dangerous, do not try this at home or at all. And if it offends you, just don't read it. |
|||
|
||||
sergejzr |
|
|||
![]() Un salsero ![]() Профиль Группа: Админ Сообщений: 13285 Регистрация: 10.2.2004 Где: Германия г .Ганновер Репутация: 6 Всего: 360 |
Это должен рулевой решать. Там надо всё сравнивать искать пути. Короче работа
![]() |
|||
|
||||
Domestic Cat |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 5452 Регистрация: 3.5.2004 Где: Dallas, US Репутация: 50 Всего: 172 |
sergej.z, а там у тебя в подписи не мат ?
![]() Пока ишшо идея - нуна предосмотреть вариант козел. -------------------- |
|||
|
||||
sergejzr |
|
|||
![]() Un salsero ![]() Профиль Группа: Админ Сообщений: 13285 Регистрация: 10.2.2004 Где: Германия г .Ганновер Репутация: 6 Всего: 360 |
А что с ним? Такое препроцессор должен убивать. (В смысле тэги хавать) |
|||
|
||||
Domestic Cat |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 5452 Регистрация: 3.5.2004 Где: Dallas, US Репутация: 50 Всего: 172 |
Дык если препроцессор не написать, кто есть их будет?
-------------------- |
|||
|
||||
sergejzr |
|
|||
![]() Un salsero ![]() Профиль Группа: Админ Сообщений: 13285 Регистрация: 10.2.2004 Где: Германия г .Ганновер Репутация: 6 Всего: 360 |
Вот смотри, как на этой страничке текст отображается, так после препроцессора и должно быть.
Текст в таком виде всё равно в каком то месте можно вычитать. |
|||
|
||||
![]() ![]() ![]() |
Правила форума "Java" | |
|
Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux, javastic. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Java: Общие вопросы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |