0

* 文字の前のすべての文字の C++ で部分文字列を抽出するにはどうすればよいですか。たとえば、文字列がある場合

ASDG::DS"G*0asd}}345sdgfsdfg

その部分をどのように抽出しますか

ASDG::DS"G
4

2 に答える 2

4

そのための正規表現は確かに必要ありません。std::string::find('*')とを使用するだけstd::string::substrです:

#include <string>

int main()
{
    // raw strings require C++-11
    std::string s1 = R"(ASDG::DS"G*0asd}}345sdgfsdfg)";
    std::string s2 = s1.substr(0, s1.find('*'));
}
于 2013-04-11T06:25:09.067 に答える