1.返回字符串s1在s中的位置,如果没有找到,则返回-1
#include#include using namespace std; int main() { string s="what are you dong"; string s1="are"; int position; position=s.find(s1); if(position==-1) cout<<"not find"<
![]()
2.返回任意字符s1在s中第一次出现的位置,s1为字符,不能为字符串 "a' "a"都可以
#include#include using namespace std; int main() { string s="hahahaha"; string s1="a"; int position; position=s.find_first_of(s1); cout<
3.从字符串s下标为a开始查找字符串s1,返回起始位置 s.find(s1,a); 查找不到返回-1< http://www.2cto.com/kf/ware/vc/" target="_blank" class="keylink">vcD4KPHByZSBjbGFzcz0="brush:java;">#include
#include using namespace std; int main() { string s="have a good time"; string s1="good"; int position; position=s.find(s1,3); cout<
4.查找字符s1在s中出现的所有起始位置
#include#include using namespace std; int main() { string s="abb abb abb"; string s1="a"; //char s1='a'; int position=0; int i=0; while((position=s.find_first_of(s1,position))!=string::npos) { cout<
![]()
5.查找字符串s1与s第一个不匹配的位置
#include#include using namespace std; int main() { string s="aaabcd"; string s1="aaafcd"; int position; position=s.find_first_not_of(s1); cout<
6.反向查找,返回s1在s中的位置
#include#include using namespace std; int main() { string s="aaabcd"; string s1="abc"; int position; position=s.rfind(s1); cout<
参考资料:
http://www.jb51.net/article/37560.htm



