2012-03-24 3 views
4

в последнее время я пятнистый много спама streads показывающие странное поведение текста, как следующее: enter image description hereКак предотвратить спам на сайтах, как показано на следующих рисунках

я пытался понять это, но даже chromes инструменты не поможет : enter image description here

У меня есть несколько веб-сайтов в Интернете и вы хотите внедрить лучший клиентский и серверный сервер защиты от спама, но мне нужно знать, что проверить на первом месте. Мне нужно знать, как это делается, и, возможно, если это можно обнаружить с помощью шаблона регулярного выражения.

любая помощь будет оценена!

пс: Я хотел бы написать лучше заголовок, но я даже не знаю, как называется этот текст поведение, и я не нашел ничего на Google

+4

Это словосочетание называется «текст« Zalgo ». Ṯ͔̟̻̭̙̉ͭ̆ͪͮ̽̑ͦ͝ȏ̞̬͛̿͛͊͆ͯ̕ Призовите ̧̯̣̣̖͗͊̊͒h̞͎͖̣͎ͫ͗ͣ̈̄̈i̛ͣ̿̒̄̇ͫ̽ͦ҉̦̠v̭̯͍̼͒ͦͬ̍ͭe͈̙̻̭͎̗̦͕̾-̨ͦͪ͆҉̞̪̞̗̬̦ṁ̡͇̋ͨ̉͒͑į̰̝̠̈ͪͪͭ̿͋ͩͤ͠n͚̙̣͎̣͐ḓ̨̧̽̉̑͘ ͤ̊̾̋ͬ͏͚̭̜͙̦ȓ̻͙͕̪͎̼̦̦ͭͪ̏͝e̛̹͊p̶͎͙̘̣̤͗ͮ͘͡r̢̛̥̹̥͓̰̳̖̪̖̓ͬ͊̿̌̐ͭ̿̊͞e̴̝̟̬̥̹̭̝̬͗ͯ̏̈ͪ͑s̷͈̤̙ͭę̘̙͚͇̪̘̉̔ͬ͢nͣ̕҉̛̤̭͖̪̝t͖̗̘̤͍̜͑ͭ͟͝i͖̹̖̹̮͙ͥͣ͊͡n̪̯̰̪̗̈ͩ͒͋͠g̨̯̫̜̣̠̍ͧ͑̈̐ͩ͌͝ ̴̦͚͖͕̮̗ͫ̿̇ͩ͠͠c̰̹͇͙̣̔̄̆͜h̗̪̣͔͍ͨ̌ͭ͡a̵̳̥̝̹̤̣̗͎͐͟͝oͬͦ͏̜͕͈͖̜̫͇͡ŝ͉̓̕.̉ ͐ͫ̅ͫ̓҉̣ –

+1

Дальнейшее чтение: http://stackoverflow.com/questions/6579844/how-does-zalgo-text-work. Что заставляет вас думать, что это спам? –

+0

спасибо за быстрый ответ. эти комментарии более чем раздражают, когда текст переполняет другие комментарии, поэтому мне нужно обрабатывать их как спам. – QQping

ответ

8

Это на самом деле не спам, он известен как ZALGO , Обнаружение этого в PHP немного сложно, попробуйте это регулярное выражение ниже:

if (preg_match ('/[^\x20-\x7E]/', $text) || preg_match ('/[^\x20-\x7E]/', $text)) { 
    die('ZALGO not allowed'); 
} 
+0

regexp отлично работает – QQping

+0

Я просто заметил, что это на самом деле слишком широкое и удаляет символы типа 'ñ, ä, ß, ø', чтобы назвать несколько ... – MMachinegun

+1

, поэтому, если вы хотите добавить слова с других языков, просто добавьте' [^ \ р {L} \ x00- \ x7E]/'. '\ p {L}' означает любое слово на любом языке. – MMachinegun

Смежные вопросы