首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >mIRC 'null‘分隔符用于$gettok

mIRC 'null‘分隔符用于$gettok
EN

Stack Overflow用户
提问于 2014-08-12 10:56:18
回答 1查看 131关注 0票数 0

抱歉我的头衔不够清楚。我回来寻求更多的指导!

我想建立一个独特的语言踢机器人。我适度的聊天有大量的俄语聊天垃圾邮件。所以我试着建立一个机器人,当他们用俄语打字的时候,它会踢人。所以我设置了这个:

代码语言:javascript
复制
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 (null)时,bot根本无法工作。

所以现在,机器人踢的唯一的东西是那些只使用那些特定字母的人。我想要机器人踢任何人谁使用这些字母,或当在一个句子/词。

顺便说一句,我之所以选择这些字母,是因为它们被认为是最常见的俄语字母,它们与英语的字母不一样。

任何帮助都是非常感谢的。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-08-13 02:41:24

尝尝这个

粘贴到新的远程文件中

代码语言:javascript
复制
on $@*:text:/(Л|Д|э|И)/iS:#:{
if ($nick !isop $chan) {
ban -k $nick 2 English in chat, please! Только на английском языке в чате!
}
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/25262529

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档