СКРИПТЫ
ТЕГИ:
php (325)
js (242)
html (146)
css (130)
html tags (62)
js tag (56)
jquery (42)
text (37)
js method (36)
php array (33)
js date (33)
form html (30)
online (28)
fonts (26)
link (26)
Показать еще :
ruweb.net (25)
foto (22)
php file (20)
atom (20)
forum (19)
svg (18)
input (18)
hosting (18)
php date (17)
html book (16)
php time (16)
board (16)
color (15)
js url (14)
img (14)
js events (14)
js time (14)
info (13)
select (13)
osclass (13)
htaccess (13)
notepad (13)
знак (12)
php path (12)
keyboard (12)
php img (12)
download (12)
table (12)
dw block (12)
jsphp (11)
form (11)
icon (11)
yandex (10)
mouse (10)
js delete (10)
keyframes (10)
hover (9)
dosite (8)
browser (7)
cookie (7)
comment (7)
php url (7)
php get (6)
click (6)
mysql (6)
canvas (6)
list (6)
iframe (6)
js math (5)
reg.ru (5)
adminka (5)
mb (5)
heading (5)
tag a (5)
chart (5)
search (5)
ftp (5)
year (5)
js id (5)
value (5)
base64 (4)
day (4)
нок (4)
flags (4)
week (4)
xml (4)
scandir (4)
ssl (4)
bbcode (4)
php var (4)
games (4)
console (4)
js form (4)
vk (4)
pages (4)
submit (4)
month (4)
symbols (4)
task (4)
https (3)
js hash (3)
js post (3)
domen (3)
money (3)
vs code (3)
куб (3)
js img (3)
ucoz (3)
padding (3)
captcha (3)
numbers (3)
line (3)
tag hr (2)
qr kod (2)
youtube (2)
video (2)
рся (2)
sitemap (2)
counter (2)
details (2)
prompt (2)
typeof (2)
google (2)
height (2)
arrows (2)
seo (2)
js vars (2)
smile (1)
scroll (1)
speed (1)
нод (1)
archive (1)
header (1)
windows (1)
rutube (1)
jino (1)
cursor (1)

поиск плохих слов в тексте, фильтруем мат

2018/08/08 Марат 290 0 php |
Самый простой, какой только можно придумать – фильтр для слов через php! Как бы нам не хотелось жить в идеальном мире, но в нем как было так и есть множество идиотов, считающих себя самыми умными!

Чтобы им так не казалось на сайтах ставятся фильтры различной сложности и даже есть целые какие-то библиотеки! Или очень часто называют фильтрация плохих слов, матерный фильтр и т.д…

Как отфильтровать мат и др.нежелательные слова

  1. Алгоритм фильтра плохих слов/мата php
  2. Скрипт фильтра плохих слов/мата php
  3. Скрипт 2 фильтра плохих слов/мата php
  4. Поиск и замена плохих слов/мата php
  5. Скачать можно здесь

  1. Алгоритм фильтра плохих слов/мата php

    Это скорее не алгоритм, а необходимые элементы.

    В некую переменную мы должны положить наш текст, который нужно проверить.

    У нас должна быть функция, которая будет проверять этот текст на наличие мата.

    Массив "мат слов". Лучше всего использовать, построчно записанные "мат слова", в переменную, чтобы не заморачиваться с точками и запятыми при создании массива. А потом с помощью explode - автоматически создать массив.

    И далее сам процесс... в цикле проверять наличие мат слов в тесте.

    Самая главная проблема в фильтрации мата - это поиск и исключение матерных слов в тексте!

    В чем проблема!?

    Слово матерное, может быть в другом регистре, матерное слово может быть с пробелом, с тире, и др.знаками, с числом.

    Итого, напрашивается вывод, что нужно избавиться от всех знаков и пробелов, кроме букв, все привести к одному регистру, например к строчным -> strtolower и уже после этого нужно искать то слово!

    Как искать матерное слово!?

    Поскольку нужно проверять на совпадение каждого слова, то понадобится цикл

    Последнее время, чаще всего использую функцию substr_count - коротко записывается, хорошо работает - просто нравится!

    Замена матерного слова

    После того, как вы нашли слово, то его нужно заменить на... что-то... на ваше усмотрение


  2. Скрипт фильтра плохих слов/мата php

    Здесь надо сказать, что в какой-то момент strtolower так меня притомил, что я написал собственную функцию, чтобы она работала всегда -> strtolower собственная функция!

    1). Фильтрация плохих слов/мата в php.

    Для этого нам понадобится два объекта

    1.Где будем искать
    2.Что будем искать!
    Один из вариантов был уже описан на странице проверки на совпадение

    Текст нам нужно привести в нижний регистр(как я уже ранее говорил) -> strtolower

    1). Теперь немного о strtolower, если у вас UTF-8:

    $text = mb_strtolower($text , "UTF-8");

    2). Если у вас Windows-1251, то скорее всего должна сработать обычная strtolower:

    $text = strtolower($text);

    3). Способ, которым пользуюсь сейчас, берем собственную функцию, которой также говорили ранее

    $text = my_strtolower($text);

    Далее нам потребуется массив слов, которые будем искать в тексте

    Array

    (

    [0] => привет

    [1] => пока

    [2] => враг

    )

    Самый простой скрипт фильтрации плохих слов/мата php

    Этот скрипт сделан для понимания, как фильтрация должна работать...

    for($i = 0; $i < count($array); $i++)

    {

    $res = @substr_count($text , $array[$i]);

    if($res == true){ $Bad = " У нас нельзя ругаться "; }

    }


    Теперь давайте сделаем форму и в ней вы можете отправить какой-то текст с одним словам из выше указанного массива.


  3. Скрипт 2 фильтра плохих слов/мата php

    Второй вариант ничем не отличается по логике от первого, лишь было отличие в функции, которая искала совпадения [strpos]

    Это немного мудренее и вначале я использовал именно этот код…

    for ($i=0; $i < count($words); $i++)

    {

        if (@strpos($proverka_bad_words, trim($words[$i])) !== false) 

        {

        $Bad = " У нас нельзя ругаться ";     

        }

    }


  4. Поиск и замена плохих слов/мата php

    Что касается замены плохих слов, и вывода текста с каким-то, на что было заменено.. это - слишком трудоемкая задача и нет явного решения.

    Я встречался с такой задачей на нашей системе комментирования, и пришел к следующему - отправка на проверку админа данного сообщения, если мат обнаружен.

    Если сообщение, с матом прошло фильтр, то просто вручную удаляем сообщение. Пользователя блокируем навсегда!

    Время, сложность, ресурсы - требуемые на решение задачи замены этих слов не стоит всего этого! Но Вы!

    Всегда можете пойти своим путем.

Не благодарите, но ссылкой можете поделиться!
Название скрипта :Простой фильтр текста php
Ссылка на скачивание : Все скрипты на одной странице
Временная ссылка для быстрейшей индексации : список всех квадратных корней.
Теги :
фильтр текста
как фильтровать текст
фильтр нецензурных слов php
фильтр мата php
Еще никто не прокомментировал! COMMENTS+   BBcode
Подписаться + =

ruweb dwweb.ru есть здесь:
Последние комментарии :
Марат :
15.08.2023 17:50
Значит в "maxv" сидит…
подробнее.
михаил :
15.08.2023 16:53
а если это сделано для диаграммы values / maxv)…
подробнее.
Марат :
17.07.2023 15:50
Спасибо за интересный вопрос! Посмотрите …
подробнее.
Александр :
17.07.2023 14:58
а как сделать чтобы при повторном клике значение value возвращалось к…
подробнее.
Марат :
30.06.2023 10:18
Спасибо за внимательность!
подробнее.
???? :
29.06.2023 15:37
Прямоугольник - это геометрическая фигура, у которой три угла…
подробнее.
Немного о ruweb.net!
Страница загружена за : 0.017569 секунд. Подробнее