次のregを定義しました。ブースト正規表現ライブラリを使用した式
"([[:digit:]]{1,})([[:blank:]]*\\[label=\")([[:print:]]*)(\\([[:print:]]*\\)\\([[:print:]]+\\))(\"];)"
regex_search
興味のあるデータを抽出するために使用しmatch[3]
ます:結果を含む次の文字列で成功しますMulOp
0 [label="MulOp( text1 )(depth =1)"];
CALL( %text1
しかし、以下の文字列では失敗し、結果のみを取得したい場合に結果が見つかりますCALL
8 [label="CALL( %text1(text2) text3 )(depth =2)"];
両方のケースに一致する一般的な正規表現を定義する方法を教えてください