C++中string的find()函数的用法

╄→尐↘猪︶ㄣ 提交于 2019-12-01 04:36:43

string的find()函数用于找出字母在字符串中的位置。

find(str,position)

find()的两个参数:

str:是要找的元素

position:字符串中的某个位置,表示从从这个位置开始的字符串中找指定元素。

可以不填第二个参数,默认从字符串的开头进行查找。

返回值为目标字符的位置,当没有找到目标字符时返回npos。

 

例1:找到目标字符的位置

string s = "hello world!";
cout << s.find("e") << endl;

结果为:1

 

例2:未找到目标字符

string s = "hello world!";
if (s.find("a") == s.npos) {
    cout << "404 not found" << endl;
}

结果为:404 not found

 

例3:指定查找位置

string s = "hello world!";
cout << s.find("l",5) << endl;

结果为:9

从空格开始(包含空格)的后半部分字符串中寻找字符"l",结果找到了world中的"l"在整个字符串中的位置

 

找到目标字符在字符串中第一次出现和最后一次出现的位置

例4:

string s = "hello world!";
cout << "first time occur in s:"<<s.find_first_of("l") << endl;
cout << "last time occur in s:" << s.find_last_of("l") << endl;

结果为:

first time occur in s:2
last time occur in s:9

 

反向查找:

例5:

string s = "hello world!";
cout << s.rfind("l") << endl;

结果为:9

即从后往前第一次出现"l"的位置

 

 

 

参考一下:https://www.cnblogs.com/wkfvawl/p/9429128.html

 

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!