find()函数返回类型:size_type
1/S.find(T):返回T在S中第一次匹配的下标位置
2/S.find_first_of(T):返回字符串T第一个字符在S中第一次出现的下标位置
3/S.find("T",2):从字符串S下标2开始,查找字符串“T”,返回在S中匹配的下标
4/T.find_first_not_of(S):查找T中第一个在S中找不到的字符在T中所在位置
5/S.rfind(T):反向查找,字符串T第一个字符在S中最后出现的位置
#include <string>
#include <iostream>
using namespace std;
int main()
{ string S("1a2b3c4d5e6f7g8h9i1a2b3c4d5e6f7g8h9i");
string T;
string::size_type pos;
cout<<"S="<<S<<endl; pos=S.find("4g");
if(pos!=S.npos)//如果没找到,返回一个特别的标志c++中用npos表示 这里npos取值是4294967295
cout<<"S.find(4g)"<<"position is:"<<pos<<endl;
else
cout<<"Not found the(4g)"<<endl; pos=S.find_first_of("6h");
cout<<"S.find_first_of(6h)is:"<<pos<<endl; pos=S.find("2b",);
cout<<"S.find(2b,5)is:"<<pos<<endl; T="2b";
pos=;
int i=;//查找S中字符串T出现的所有位置。
while((pos=S.find_first_of(T,pos))!=string::npos){
cout<<"position"<<i<<":"<<pos<<endl;
pos++,i++;
} T="acb12389xefgxyz789";
pos=T.find_first_not_of(S);
cout<<"T.find_first_not_of(S):"<<pos<<endl; T="3c4d";
pos=S.rfind(T);
cout<<"S.rfind(3c4d):"<<pos<<endl;
}