对不起,如果我的标题不够清楚。我回来寻求更多指导!
我正在尝试建立一个独特的语言踢机器人。我主持的聊天中有大量俄语聊天垃圾邮件发送者。所以我试图建立一个机器人,当他们输入俄语时会踢他们。所以我设置了这个:
alias -l russian.words { RETURN Л.Д.э.И }
ON @*:TEXT:*:#: {
IF ($nick isop #) return
VAR %x = $strip($1-) , %i = $numtok($russian.words,46)
WHILE (%i) {
IF ($istok(%x,$gettok($russian.words,%i,46),32)) {
raw -q mode # +b $wildsite
msg # $nick $+ , English in chat, please! Только на английском языке в чате!
msg # /timeout $nick 1
RETURN
}
DEC %i
}
}
问题是机器人仅在“独立”时检查俄语字母。如果俄语字母是较大句子/单词的一部分,则机器人不起作用。
我相信这是因为 $gettok 中的分隔符设置为 32(一个空格)。但是,当我将分隔符更改为 0(空)时,机器人根本不起作用。
所以现在,机器人唯一踢的是那些只使用那些特定字母的人。我希望机器人踢到任何单独使用这些字母或在句子/单词中使用这些字母的人。
顺便说一句,我选择这些字母是因为它们被认为是最常见的俄语字母,它们与英语的字母不同。
任何帮助表示赞赏。