这是一些示例输入:
<210> DW_AT_name : (indirect string, offset: 0x55): double
<ae> DW_AT_name : (indirect string, offset: 0x24): long int
<b5> DW_AT_name : int
我想提取代表实际类型的字符串。所以我的输出是:
double
long int
int
这是我到目前为止的正则表达式(双重转义,因为它在 Java 中):
.*DW_AT_name.*:\\s*([^:&&\\S]*)\\s*
它适用于int
,但不适用于其他两个。我认为最好的解决方案基本上是说“在最后一个冒号之后获取所有内容”,但我不确定如何。请注意,它还必须包括这些DW_AT_NAME
东西。