Автор: Goblin 4.11.2008, 23:56
Надо добавить строчку разрешенных слов
т.е. этот скрипт я использую как антимат и бывает что когда пишешь
рубля он меняет слово на рубла
Автор: fixx 6.11.2008, 0:59
Хмм.. в выложеном скрипте не нашел слова "бля" =)
CODE
if string.find(sData, "[Dd][Cc][Hh][Uu][Bb]") or
string.find(sData, "[Nn][Oo][-][Ii][Pp]")
then
sData = string.gsub(sData , "[Dd][Cc][Hh][Uu][Bb]", "ХАБ для БАБ")
sData = string.gsub(sData , "[Nn][Oo][-][Ii][Pp]", replWord)
Core.SendToAll(sData);
Так вот, если убрать квадратные скобки, то можно добавлять слова целиком:
CODE
if string.find(sData, "бля") or
string.find(sData, "йух")
then
sData = string.gsub(sData , "бля", "йя - кокашко")
sData = string.gsub(sData , "йух", replWord)
Core.SendToAll(sData);
Квадратные скобки дают возможность захватывать слова с разным регистром букв, как то: БлЯ, бЛя, ЙуХ, йуХ, а так же вылавливать слова содержащие латинские символы: ЙYХ, йу
XА чтоб добавить строчку разрешенных слов, надо у же более серьезных скриптероффффф привлекать, никаГ не соображу.
Думаеццо, с нуля будет легче скрипт написать
Начиная со слов исключений.
И всеж, в этом скрипте, если использовать его как
антимат, концепция должна быть абсолютно другой.
Не нужно захватывать куски слов, а нужно фильтровать базар пользователей в соответствии со списком запретных слов...
А это уже совсем другой скрипт, и он есть на этом форуме