首页 > 解决方案 > VB中的字符串解析

问题描述

例如,我的字符串是 ="53 54 41 52 54 00 00 01 53 54 41 52 54 00 01 02 53 54 41 52 54 01 02 03"

我想要做的是每次我发现"53 54 41 52 54"它都会捕获剩余的 3 个字节。所以,基于我上面的字符串的例子,我想要的结果如下

当它首先找到 53 54 41 52 54 时,它会捕获 00 00 01,当它找到第 2 个 53 54 41 52 54 时,它会捕获 00 01 02,最后当它找到第 3 个 53 54 41 52 54 时,它将捕获 01 02 03。

在 VB 中执行此操作的最佳方法是什么?

先感谢您。

感谢您的指导。

标签: vb.netstring-parsing

解决方案


您可以使用正则表达式:

Dim r as New Regex("53 54 41 52 54 (?<b>\d\d \d\d \d\d)")

ForEach m as Match in r.Matches(mystring)
  MsgBox(m.Groups("b").Value)
Next m

正则表达式将寻找您想要的数字,然后获取随后的 3 对\d数字并将它们捕获到一个名为b的组中,您可以按循环中所示检索该组


推荐阅读