Найти - Пользователи
Полная версия: Помощь с поиском мата и ругательств в списке слов))
Начало » Центр помощи » Помощь с поиском мата и ругательств в списке слов))
1 2
pamperz666
Нужно придумать код, который бы по корням матершиных слов и всяких нехороших ругательств отлавливал слова и искоренял их) К примеру слова с корнями “пох”, “нах”, “пид”. И хотелось бы ещё спросить, как можно слова искорененные закинуть в какой-нибудь отдельный списочек?)
Буду очень благодарен если поможете)
doza_and
Давайте мы вас научим в как в начале текста вставить 18+. Это проще будет, да и текст не испортите.
pamperz666
doza_and
Давайте мы вас научим в как в начале текста вставить 18+. Это проще будет, да и текст не испортите.
ааа блин( это как-то нарушает правила форума? Сорян) Давайте))
doza_and
pamperz666
то как-то нарушает правила форума?
Формально да. Но я тоже не вставил улыбочку… думал и так очевидно что это шутка. Просто считаю задачу цензурирования текста, тем более автоматического, архивредной. Хочет человек писать матом, пускай пишет. Такова жизнь, нечего это прятать. Будет плохо писать его не будут читать и забанят.
PEHDOM
pamperz666
К примеру слова с корнями “пох”, “нах”, “пид”
Если подходить банально через re или find, то вашу выборку будут попадать такие слова как "похожий“, ”находка“ или ”аспид“..
Конечно можно потом постоянно мониторить такие слова и вносить их в список ”exclude“. Но вы уверены что сможете их найти среди миллионов на**й или по**й?
Иначе вам нужно сложный семантический анализ, для выделения в слове корней, префиксов, суффиксов и окончаний, и только тогда по корню определять. Задача далеко не тривиальная, и до сих пор не решена до конца ведущими вендорами словарей и переводчиков, и они не спешат делиться исходниками, а вы ”Нужно придумать код“.

Я конечно не знаю полностью условий задачи, но для начала можно банально составить список слов которые однозначно попадают под бан(со всеми падежами и окончаниями), и по ним уже фильтровать разделяя слова по пробелам. Это будет достаточно быстро, и несложно. И решит проблему хотябы непрыкрытого мата.

Но хитрые юзвери достаточно быстро поймут что можно написать ”л_о_х“, или ”пи дар". Но такие финты пропустит и семантический анализатор.


Rodegast
Короче используй машинное обучение, так вернее будет.
Vladimirv
Вот тебе короткий список ругательных слов: регистрация, модерация, банизация )
JOHN_16
Vladimirv
Первое предупреждение за флуд/оффтоп
pamperz666
PEHDOM

Хмммм и-то верно, а что если действительно просто банально подойти через регулярные выражения, пускай даже в алгоритм войдут и не матерные словечки типа "похожий“, ”находка“ или ”аспид“, а уже дальше сам буду вычленять из получившегося списка все не матерные слова и запихивать их куда-нибудь или как-нибудь их в коде запишу вручную (типа все слова с корнями нах, пох, кроме слов (и список не матерных слов) .
Поможете написать код поиска поиска слов с корнями ”нах“, ”пох"?)
PEHDOM
pamperz666 давайте для начала определимся с некоторыми вопросами..

1. Вам это нужно для?
- учеба; препод задал ДЗ/курсовая/дипломная/еtс и тогда нужно писать все самому
- рабочий проект; антиматфильтр для чятика/форума/ХЗ еще чего.. тогда можно воспользоваться сторонней библиотекой.
Например https://pymorphy2.readthedocs.io/en/latest/ или вот http://www.aot.ru/history.html . Конечно же они не идеальны но думаю более чем подойдут и сделают за нас процентов 80-90 работы.
Или готовое решение уже допилить под себя. типа такого https://pypi.python.org/pypi/matcensor/1.0.3 Очень все просто и примитивненько, там даже re используется для только для замены, а так чистый пайтон, Хотя мне оно не нравиться, уж больно все реализовано “в лоб”, можно сделать лучше, но для “заготовки” вполне подойдет.
- опять же если для дела, то к чему вы будете это прикручивать? Для многих фреймоврков уже есть готовые решения, или заготовки под них.
2. насколько критично быстродействие?

pamperz666
типа все слова с корнями нах, пох, кроме слов (и список не матерных слов)
На самом деле вам нужно искать другие слова потом что “нах” и “пох” это не корни.
немного теории https://habrahabr.ru/post/101232/

This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB