如何更改字符串,以使近似字符串匹配的变体无法与原始字符串匹配?
我制作了一个 IRCbot,它根据 channel 的日志文件运行游戏。它打印日志中的引言,玩家通过猜测“谁说的”来收集积分。该 channel 相当极客,其中一名玩家只花了不到 30 分钟就构建了一个每次都能赢得比赛的机器人。我意识到手 Action 弊也很容易且无法防御,但请将此视为自动化机器人之间的竞争。我想更新我的机器人,以便任何全自动机器人都无法玩游戏:)
我考虑过从引号中随机删除一个字符,但是 agrep仍然能够匹配字符串。我考虑过用看起来相似的替代字符替换一些字符,但这对于逆向工程来说是微不足道的。我正在寻找更难打破的想法。
示例行:
[14:15] <baobot> [QUOTE 13/15] Who famously declared "minulla ainakin paperin tekemisessä 1% ajasta menee algon suunnitteluun ja 99% menee paperin kirjoittamiseen"?
最佳答案
将您的报价打印为 ascii-art。
使用类似于命令行工具Figlet或厕所(explaination)的东西。
这是一个简单的示例:例如 string2ascii-generator 。
为了开始使用,您可能需要从 figlet 复制源代码.
关于string - 防御近似字符串匹配,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34417231/