如果nick在文本文件行x



我现在的代码有问题。

on *:TEXT:*text*:#:{ 
  if ($nick isin $read(test.txt, 1)) {
    msg $chan working.
  }
}

我遇到的问题是,如果nick"User1"在test.txt中,而"User12"类型文本,它将检测到User1在test.txt中!如果"User1"在第1行,我如何使"User12"不会说工作

您的问题是User1在第一行包含User12,而您正在通过isin进行搜索。

您可以使用regex $+(b,$nick,b)b字边界,以确保在搜索$nick

之前或之后没有文本
on *:TEXT:*text*:#:{ 
  var %line = $read(test.txt, 1)
  if ($regex(%line, $+(b,$nick,b))) {
    msg $chan working.
  }
}

另一种方法是使用标识符$istok…

on *:TEXT:*text*:#:{ 
if ($istok($nick,$read(test.txt,1),32)) {
msg $chan working.
}
}

因为它只会在特定的字符串上搜索一个特定的token…$istok标识符将做与b****b Regex边界

相同的匹配

相关内容

  • 没有找到相关文章

最新更新