2013-07-13 179 views

回答

5

你會使用.find找到,其中第一\n是,然後使用.erase刪除從第一個字符開始到您發現的地方\n

#include <iostream> 
#include <string> 

int main() 
{ 
    std::string myString = "abc\ndef\nghi"; 
    myString.erase(0, myString.find("\n") + 1); 
    std::cout << myString; 

} 
1

當該源爲MacOS的凱撒的回答將失敗,因爲:

  • \ N =>的Un * X

  • \ r \ N =>窗口

  • \ r => MacOS

使用boost :: regex更好的方法可能是:

boost::regex kNewLine("\r\n|\n|\r"); 
boost::split_regex(oSplitMessage, iRawMessage, kNewLine); 

我希望它有幫助。