以下是我的字符串
const char* str = "./a.out(__gxx_personality_v0+0x35d) [0x400e5d]";
我只想获取“0x400e5d”字符串,即包含在 [ 和 ] 括号中的子字符串。
我尝试了以下但无法正常工作:
char temp[1024];
sscanf(symbol, "%*[^[]%1023[^]]", temp);
但它给出了“[0x400e5d”输出。如何避免输出中出现“[”?
最佳答案
阅读[
:
sscanf(symbol, "%*[^[][%1023[^]]", temp);
注意额外的 [
代表它自己。
关于c++ - 如何使用正则表达式中的 sscanf() 解析字符串?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21621004/