MIRC,在读取文本文件时忽略“|”?

Posted

技术标签:

【中文标题】MIRC,在读取文本文件时忽略“|”?【英文标题】:MIRC, Ignoring " | " when reading a text file? 【发布时间】:2016-07-27 00:49:55 【问题描述】:

在我的 MIRC 脚本中,它被设置为读取一个文本文件,在这些文本文件中有符号“|”后跟一个空格,似乎可以读取“|”之前的所有内容,但是在第一个空格处将其切断。任何帮助表示赞赏。

我正在使用

msg $nick $read(test.txt, n, 1)

读取文本文件。

编辑:: 我尝试了所有导致相同结果的开关。

编辑:: 它还在服务器窗口中告诉我“未知命令”

编辑:: 在制作了一个新的 pastebin 上传脚本后,它似乎仍然存在这个问题?它将完全切断“&”或“|”之后的其余文本

【问题讨论】:

对我来说效果很好,尝试检查实际文件中是否真的有some text | some other text 好吧,同一行中有多个“|”,这是文本文件中的示例。 abcd : 26/07/2016   ::efgh::  ijklmn  |  opqrst | uvwxyz 2382 你确定你没有使用(test.txt, np, 1) 吗? @OrelEraki 是的...我确定。你能重现我的情况吗?让我更具体地说明返回给我的内容...abcd : 26/07/2016 ::efgh:: ijklmn | opqrst 在任意窗口写入://echo -ag $read(test.txt, n, 1),是否显示整行? 【参考方案1】:

症状与 $read 被评估为命令的场景匹配,结果将分隔符作为要执行的命令集。

这可能是由于别名或事件造成的。

尝试第一个 /play 命令,该命令将从第 3 行开始播放文件,以查看它的行为是否与我们预期的一样,或者将每一行作为一组命令,分开由 / 然后执行第二个 /play 命令来查看它应该如何发送到服务器。

这是为了找出问题所在。

/play -axl3 echo test.txt /play -exl3 test.txt

输出应该和我们预期的一样,显示的行包括 |

这将确保问题归咎于其他损坏的别名或事件。

我们将执行以下操作,在每个步骤之后您将测试您的代码以查看它是否已解决。

    通过将脚本命令转换为 /!msg $nick$read(test.txt, n, 1) 来测试一个名为 msgalias 是否会伤害您。 通过禁用它们来检查危险事件,例如臭名昭​​著的 INPUT 或崛起的强盗 PARSELINE。如果问题已解决,则将事件一一返回找到有问题的事件并修复它。

【讨论】:

我目前在这里使用这个脚本,它使用解析线,我需要这个才能让我的整个 IRC 机器人运行。 pastebin.com/8x0E0sAv 请阅读完整的答案并告诉我问题出在哪里。 我的脚本中没有别名,play 给出了正确的输出,除了我在上面发布的那个脚本之外,我已经测试了它没有其他事件......我不明白你还想要什么我该怎么办? 好吧,在重读了很多次希望找到解决方案之后,我只能说当我使用你展示给我的两种方式玩时,它们都显示了正确的文字。 您想要捕捉private messagedescribe 吗?如果是这样,您的事件应该是 :ACTION: 而不是 :TEXT:【参考方案2】:

由于缺乏响应/答案,我无法解决它,我已通过使用临时修复此问题

play -xl# $nick test.txt

而不是

msg $nick $read(test.txt, n, 1)

【讨论】:

【参考方案3】:

我遇到了几乎相同的问题并且能够使用相同的解决方案解决它,试试这个:

您之前的脚本是:msg $nick $read(test.txt, n, 1) 现在删除 'msg $nick' 并将其添加到 text.txt 文件中每一行的开头,并在 'msg $nick' 和该行的其余部分之间留一个空格,即:msg $nick Hey I see you are back | msg $nick Missed You!

那么你的脚本就变成了:$read(test.txt, p)

^^ 希望这是有道理的,但我发现原来的问题是双重评估,因此为什么有时你会看到错误:未知命令或类似的东西。

【讨论】:

以上是关于MIRC,在读取文本文件时忽略“|”?的主要内容,如果未能解决你的问题,请参考以下文章

Python:读取文件时如何忽略两个特定单词之间的文本?

在文本 $date mirc

Python:读取文件时如何忽略#comment行

c++读取文本文件的一个极其容易忽略的空行问题

读取文件时Python中的UnicodeDecodeError,如何忽略错误并跳转到下一行?

C++ 使用条件语句读取文本文件