0

次のテスト文字列があります。

#5=BUILDING('xxxcdccx',#5,$,$,$,#21,$,$,.ELEMENT.,$,$,$);
#6=BUILDING('xxxcdccx',#5,$,$,$,#21,$,$,.ELEMENT.,$,$,$);
#7=BUILDING('xxxcdccx',#5,$,$,$,#21,$,$,.ELEMENT.,$,$,$);

抽出する必要があります:

  • 上記の文字列から「#integer」(常に文字列の先頭から始まる)を変数に格納します。
  • 上記のテスト文字列の "(" と ")" の間の文字列。

正規表現を使用してC ++でこれを達成する方法を誰かが提案できますか?

簡単な例として次のことを試しました(一度に1行ずつ処理するループです):

std::regex e ("\#[:d:]+");
if (std::regex_match(sLine,e)){
   //store it and process it
}

出力は次のようになります。

#5

and

'xxxcdccx',#5,$,$,$,#21,$,$,.ELEMENT.,$,$,$ ?? (not sure)
4

1 に答える 1