0

我计划将 RegExes 用于允许在一组 Java 字节码指令中搜索操作码模式的项目。我的输入通常在 10-65000 个操作码之间。

这是我想匹配的模式示例:0x1b 0x06 0x7c 0x3c

我有时需要能够将 2-6 个操作码视为相同的操作码,这就是我使用正则表达式的字符范围的原因。您可以在以下正则表达式的第一个、第二个和第四个非捕获组中看到此示例:(?:0x1[a-d]) (?:0x0[3-8]) 0x7c (?:0x3[b-e])

我知道必须有更好的方法来做到这一点!哪种方法最适合这种类型的输入?

4

1 回答 1

1

好吧,如果这些字节被存储为字符,我相信你可以用这样的正则表达式模式来匹配它们:

[\x1a-\x1d][\x03-\x08]\x7c[\x3b-\x3e]

不过,我不确定这是最明智的方法。

于 2013-09-04T19:37:29.243 回答