我正在用 C# 构建一个 telnet 应用程序(用于在老式 BBS 系统上编写门游戏脚本,例如 Wildcat),并且似乎无法为 ANSI 转义码(例如光标移动、着色等)构建一个工作解析器 - 几乎所有系统我'已测试发送违反任何“标准”的未定义序列。关于此事的资源似乎也很少,维基百科有我迄今为止找到的最深入的列表,但即使他们说它不完整 - 我遇到的大多数其他网站只是复制/粘贴维基百科的文章。
我的问题:那里有图书馆吗?如果没有,一些解析代码/正则表达式怎么样?至少一些适当的文档对于诸如此类的事情ESC[!_
会非常有帮助。
我真的觉得我正在重新发明轮子,特别是看到 Telnet 或多或少相当于互联网的轮子(至少在年龄方面;)
编辑:添加了一个奇怪的例子:
00000075h: 1B 5B 73 1B 5B 32 35 35 42 1B 5B 32 35 35 43 08 ; .[s.[255B.[255C.
00000085h: 5F 1B 5B 36 6E 1B 5B 75 1B 5B 21 5F 02 02 3F 48 ; _.[6n.[u.[!_..?H
00000095h: 54 4D 4C 3F 1B 5B 30 6D 5F 1B 5B 32 4A 1B 5B 48 ; TML?.[0m_.[2J.[H
000000a5h: 0C 0D 0A ; ...
The mysterious part is '21' in line 2 ---^^