我有一个关于从 C++ 字符串中删除整数的基本问题。我对 c++ 不是特别熟悉,对正则表达式也不是很熟悉。
我有一个字符串,例如
string myString = "12 text 345 text"
整数可以是任意长度,文本也可以(它不是固定的)。我需要做的是将第一个整数(12)和第二个整数(345)提取到两个单独的整数对象中。
任何帮助将不胜感激。
我有一个关于从 C++ 字符串中删除整数的基本问题。我对 c++ 不是特别熟悉,对正则表达式也不是很熟悉。
我有一个字符串,例如
string myString = "12 text 345 text"
整数可以是任意长度,文本也可以(它不是固定的)。我需要做的是将第一个整数(12)和第二个整数(345)提取到两个单独的整数对象中。
任何帮助将不胜感激。
您可以使用stringstream
如下:
std::string myString = "12 text 345 text";
int firstInteger = 0;
int secondInteger = 0;
std::string firstString= "";
std:string secondString="";
std::stringstream ss(myString);
ss >> firstInteger >> firstString >> secondInteger >> secondString;
std::cout << "firstInteger " << firstInteger
<< "\nSecondInteger " << secondInteger <<std::endl;
它输出:
firstInteger 12
secondInteger 345
做这个
stringstream os(myString);
os >> int imp1 >> string dummy >> int imp2;
cout << imp1 << " and " << imp2;