Tracker1
11.01.2015, 14:57
Всегда интересовали личности, которые ставят себе огромные стоки, в большинстве случае даже и не рабочие, и называют это защитой от рекламы.
Подобные стоки создают неймоверную нагрузку на сервер и не обезопасят никого на самом то деле.
Вот подобные примеры
http://breedpmnr.ru/i/8DFA24
http://breedpmnr.ru/i/C527F9F6
Эти личности наверное забыли, как часто отправляются сообщения и команды на серверах с 50-100 онлайном.
Я же предлагаю нормальную антирекламу без особой нагрузки на сервер\стэк
Вся суть в регулярных выражениях.
([0-9]{1,3})[^[:digit:]^[:cntrl:]]{1,3}([0-9]{1,3})[^[:digit:]^[:cntrl:]]{1,3}([0-9]{1,3})[^[:digit:]^[:cntrl:]]{1,3}([0-9]{1,3})
Вот сообственно и регулярное выражение.
Что такое регулярное выражение? - Первая ссылка в гугле ответит вам, не ленитесь.
Чтобы это заработало, необходим плагин http://forum.sa-mp.com/showthread.php?t=247893
А дальше дело за малым, создается сток по виду подобного
stock IsIp(const string[])
{
if(!adv) adv= regex_build("([0-9]{1,3})[^[:digit:]^[:cntrl:]]{1,3}([0-9]{1,3})[^[:digit:]^[:cntrl:]]{1,3}([0-9]{1,3})[^[:digit:]^[:cntrl:]]{1,3}([0-9]{1,3})");
return regex_search_exid(string, adv);
}
А к глобальным переменным мы добавляем
new RegEx:adv;
И все. Проверить это регулярное выражение можно тут http://regexr.com/v1?38ro8
Вводите абсолютно что пожелаете в окно ввода. Если выделилось синим, то значит подобное сообщение будет оценено как реклама.
Если же вам что-то не нравится в регулярном выражении - вы можете его запросто написать. Здесь всего-лишь одна строка кода, а не 20-25 строк непонятного быдлокода как у других.
з.ы естественно никак невозможно с помощью кода отличить, вводит ли человек айпи адресс, или же сообщает просто какое-то количество цифр, например счет в банке. Это уже дело за вами.
з.ы.ы
еще один пример использования регулярного выражения. Проверка на рп ник
regex_match(playername, "([A-Z]{1,1})[a-z]{2,9}+_([A-Z]{1,1})[a-z]{2,9}")
А за сколько бы строк написал ваш бы скриптер?
Подобные стоки создают неймоверную нагрузку на сервер и не обезопасят никого на самом то деле.
Вот подобные примеры
http://breedpmnr.ru/i/8DFA24
http://breedpmnr.ru/i/C527F9F6
Эти личности наверное забыли, как часто отправляются сообщения и команды на серверах с 50-100 онлайном.
Я же предлагаю нормальную антирекламу без особой нагрузки на сервер\стэк
Вся суть в регулярных выражениях.
([0-9]{1,3})[^[:digit:]^[:cntrl:]]{1,3}([0-9]{1,3})[^[:digit:]^[:cntrl:]]{1,3}([0-9]{1,3})[^[:digit:]^[:cntrl:]]{1,3}([0-9]{1,3})
Вот сообственно и регулярное выражение.
Что такое регулярное выражение? - Первая ссылка в гугле ответит вам, не ленитесь.
Чтобы это заработало, необходим плагин http://forum.sa-mp.com/showthread.php?t=247893
А дальше дело за малым, создается сток по виду подобного
stock IsIp(const string[])
{
if(!adv) adv= regex_build("([0-9]{1,3})[^[:digit:]^[:cntrl:]]{1,3}([0-9]{1,3})[^[:digit:]^[:cntrl:]]{1,3}([0-9]{1,3})[^[:digit:]^[:cntrl:]]{1,3}([0-9]{1,3})");
return regex_search_exid(string, adv);
}
А к глобальным переменным мы добавляем
new RegEx:adv;
И все. Проверить это регулярное выражение можно тут http://regexr.com/v1?38ro8
Вводите абсолютно что пожелаете в окно ввода. Если выделилось синим, то значит подобное сообщение будет оценено как реклама.
Если же вам что-то не нравится в регулярном выражении - вы можете его запросто написать. Здесь всего-лишь одна строка кода, а не 20-25 строк непонятного быдлокода как у других.
з.ы естественно никак невозможно с помощью кода отличить, вводит ли человек айпи адресс, или же сообщает просто какое-то количество цифр, например счет в банке. Это уже дело за вами.
з.ы.ы
еще один пример использования регулярного выражения. Проверка на рп ник
regex_match(playername, "([A-Z]{1,1})[a-z]{2,9}+_([A-Z]{1,1})[a-z]{2,9}")
А за сколько бы строк написал ваш бы скриптер?