我目前正在使用一个非常古老的系统(2000年初),将来会迁移,但现在无法修改。
此系统使用套接字连接进行通信,并以下一格式发送消息:“CALLNAME | FieldName~Value | FieldName~Value | ...”。例如,它可能是“CallToPaymentModule | Name~Charles | Cost~3 | ......”
我会截取此消息并将其映射到变量为“FieldName”的对象中,其值为“Value”。
我目前唯一能够执行的解决方案是使用正则表达式转换为JSON,然后映射到对象,但可能有更快的解决方案。
有人有什么想法吗?
提前谢谢。
最好的问候。
答案 0 :(得分:0)
正则表达式的(通常更有效和更精确)替代方法是解析。这是计算机科学的标准主题。幸运的是,看起来您的数据格式非常简单,应该很容易编写解析器。您可以手动编写解析器,基本上手动循环字符串中的字符并决定要做什么,或类似的东西,或者您可以使用像Antlr这样的解析器生成器,它将为您生成一个解析器类。语法规范。