Tách dòng input
của bạn vào dòng
std::string line;
while (std::getline(input, line))
{
// process each line here
}
Để chia một dòng diễn tả bằng lời, hãy dùng một stringstream:
std::istringstream linestream(line); // #include <sstream>
std::string word;
while (linestream >> word)
{
// process word
}
Bạn có thể lặp lại điều này cho mỗi từ để quyết định xem nó có chứa một số. Vì bạn không nói rõ liệu số của bạn là số nguyên hoặc không số nguyên, tôi giả sử int
:
std::istringstream wordstream(word);
int number;
if (wordstream >> number)
{
// process the number (count, store or whatever)
}
Disclaimer: Cách tiếp cận này không phải là hoàn hảo. Nó sẽ phát hiện "số" ở đầu các từ như 123abc
, nó cũng sẽ cho phép định dạng đầu vào như string 123 string
. Cách tiếp cận này cũng không hiệu quả lắm.
Nguồn
2011-10-24 07:57:04
bạn có gì cho đến nay? –