Exercise 9.38:
Write a program that, given the string
已知有如下 string 对象:
"ab2c3d7R4E6"
finds each numeric character and then each alphabetic character. Write two versions of the program. The first should use
find_first_of , and the second find_first_not_of .
编写程序寻找该字符串中所有的数字字符,然后再寻找所有的字母字符。以两种版本编写该程序:第一个版本使用 find_first_of 函数,而第二个版本则使用 find_first_not_of 函数。
#include<iostream>
#include<string>
using namespace std;
int main()
{
string src("ab2c3d7R4E6");
string num("0123456789");
string ::size_type pos = 0;
cout <<"the numbers are:" <<endl;
//注意调用find_first_of()操作的是源数组,操作里面的参数是需要被查找的内容,不要搞反了
while((pos = src.find_first_of(num, pos)) != string ::npos)
{
cout <<src[pos] <<" ";
pos++;
}
cout <<endl;
cout <<"the letters are:"<<endl;
pos = 0;
while((pos = src.find_first_not_of(num, pos)) != string ::npos)
{
cout <<src[pos] <<" ";
pos++;
}
cout <<endl;
system("pause");
return 0;
}