2016-01-21 79 views
-5

我有一個字符串「2548 Tom White」。我需要將「2548」複製到一個字符串,將「Tom White」複製到另一個字符串。什麼是最好的解決方案? 我想我會找到第一個空間的位置和字符串的結尾。然後第一個副本將從開始到第一個空間,第二個副本將從第一個空間到字符串的結尾。但我需要找到第一個空格的位置和字符串的結尾,然後複製。如何複製部分字符串? C++

+0

cf.字符串參考http://www.cplusplus.com/reference/string/string/ – Pierre

+1

請告訴我們你到目前爲止所嘗試過的東西,或者你有什麼想法,這樣你就可以幫助你自己做。 – mnille

+0

你使用.NET框架嗎?然後你可以看看'String :: Split'方法。這將字符串分割成一個字符串數組。參數是分隔符。我沒有使用.NET框架,所以這只是我的一個暗示。 – mnille

回答

1

您需要使用功能find_first_ofsubstr。下面是你是如何做到的:

std::string s1 = "2548 Tom White"; 
size_t pos = s1.find_first_of(' '); 
std::string s2 = s1.substr(0, pos); 
std::string s3 = s1.substr(pos + 1);