求一个替换16进制hex字符串替换的正则表达式

西江 2018-01-18 08:34:39
一个字符串数据包如下:
~513,3,e~x,100~
对应的16进制字符串如下:
7E3531332C332C657E782C3130307E
加空格方便看:7E 35 31 33 2C 33 2C 65 7E 78 2C 31 30 30 7E
通过~来区分包头跟包尾,但是数据包里的~需要做转译(0x7E转译为0x7D 0x02,0x7D转译为0x7D 0x01)
转译后的16进制字符串:7E3531332C332C657D02782C3130307E

问题:
收到请求的16进制字符串(通过byte[]转换而来):7E3531332C332C657D02782C3130307E
java如何通过正则表达式校验包头跟包尾并把头尾去掉,把字符串中间的7D02替换为7E
期望处理后的结果如下:
3531332C332C657E782C313030

求一个正则表达式,感谢。




...全文
2373 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
西江 2018-02-05
  • 打赏
  • 举报
回复
@ppchaos 是的
ppchaos 2018-01-25
  • 打赏
  • 举报
回复
只有这两种方式:0x7E转译为0x7D 0x02,0x7D转译为0x7D 0x01?

37,718

社区成员

发帖
与我相关
我的任务
社区描述
JavaScript,VBScript,AngleScript,ActionScript,Shell,Perl,Ruby,Lua,Tcl,Scala,MaxScript 等脚本语言交流。
社区管理员
  • 脚本语言(Perl/Python)社区
  • IT.BOB
加入社区
  • 近7日
  • 近30日
  • 至今

试试用AI创作助手写篇文章吧