我有以下测试字符串。
#5=BUILDING('xxxcdccx',#5,$,$,$,#21,$,$,.ELEMENT.,$,$,$);
#6=BUILDING('xxxcdccx',#5,$,$,$,#21,$,$,.ELEMENT.,$,$,$);
#7=BUILDING('xxxcdccx',#5,$,$,$,#21,$,$,.ELEMENT.,$,$,$);
我需要提取:
- “#integer”(始终从字符串的开头开始)从上面的字符串中提取并将其存储在变量中。
- 上面测试字符串中“(”和“)”之间的字符串。
有人可以建议我如何使用正则表达式在 C++ 中实现这一点。
我尝试按照简单的示例进行操作(这是一个一次处理一行的循环):
std::regex e ("\#[:d:]+");
if (std::regex_match(sLine,e)){
//store it and process it
}
输出应该是:
#5
and
'xxxcdccx',#5,$,$,$,#21,$,$,.ELEMENT.,$,$,$ ?? (not sure)