正規表現を使用して文字列をフォーマットするには、何らかの助けが必要です。私は、(33,2)、(44,2)、(0,11)正規表現を使用して条件付き置換
私は、次の
にこの文字列を再フォーマットする必要がありタイプ
の文字列を持っています(2)、(2)、(0,11)
つまり、最後のオカレンス以外の入力から
(\\([[:digit:]]+\\,)
を削除します。私は次のコードを試しましたが、すべての出現を置き換えます。
#include <iostream> #include <string> #include <regex> int main() { std::string s ("(32,33),(63,22),(22,1)"); std::regex e ("[[:digit:]]+\\,"); std::string result; std::regex_replace (std::back_inserter(result), s.begin(), s.end(), e, "$2"); std::cout << result; return 0; }
私は、私はこれを成し遂げるために
std::sregex_iterator
を使用する必要があるが、これを理解することができていないことを理解しています。すべてのサポートをよろしくお願いします。
uがこれをしたいですか? https://regex101.com/r/poo4t4/1 –