(去膜拜大佬的博客园,结果被自己菜到自闭)

find

string中find()返回值是字母在母串中的位置(下标记录),如果没有找到,那么会返回一个特别的标记npos。

对其返回的下标position的定义:

 string::size_type position;
前面那一块是一个类型,不要管他(我是小白)
  string s("1a2b3c4d5e6f7jkg8h9i1a2b3c4d5e6f7g8ha9i");
string flag;
string::size_type position;
//find 函数 返回jk 在s 中的下标位置
position = s.find("jk");
if (position != s.npos) //如果没找到,返回一个特别的标志c++中用npos表示,要记住,这是一个很大的数,不是零
{
printf("position is : %d\n" ,position);
}
else
{
printf("Not found the flag\n");
}

再来一组

s.find_first_of(flag):从头找flag 的位置

s.find_last_of(flag):倒着找flag的位置

find("b",5):从第五位往后找b所在的位置


   flag = "c";
position = s.find_first_of(flag);
printf("s.find_first_of(flag) is :%d\n",position);
position = s.find_last_of(flag);
printf("s.find_last_of(flag) is :%d\n",position);
position=s.find("b",);
cout<<"s.find(b,5) is : "<<position<<endl;
//查找s 中flag 出现的所有位置。

还有一个更高级的,

寻找所有的flag

find(flag,position)!=string::npos

  flag="a";
position=;
int i=;
while((position=s.find(flag,position))!=string::npos)
{
cout<<"position "<<i<<" : "<<position<<endl;
position++;
i++;
}

也可以进行反向查找

s.rfind()

 flag="";
position=s.rfind (flag);
printf("s.rfind (flag) :%d\n",position);

这个地方有个内容,就是当s.find 与s,rfind寻找的地址不一致时,说明不止出现了一次.

(所以有些题询问是否出现了一次时可以用)

感谢大佬的博客园对本小白的帮助.
部分代码参考来自
https://www.cnblogs.com/wkfvawl/p/9429128.html
此处应有掌声.
虽然菜到了自闭,但是还是要继续往下走,去面对新的挑战.

最新文章

  1. 【Cocos2d-x for WP8 学习整理】(3)CCScrollView 实现捕鱼达人一样的场景选择界面
  2. Oracle 11g服务器安装详细步骤
  3. WIN2008 R2 安装SQLSERVER2008笔记
  4. Bootstrap 框架 栅格布局系统设计原理
  5. memset的使用
  6. java命令行参数
  7. 【Pro ASP.NET MVC 3 Framework】.学习笔记.4.MVC的主要工具-使用Moq
  8. UVA 11019 Matrix Matcher(ac自动机)
  9. JS中字符串拼装 单双引号的处理 字符转义
  10. HDOJ 2030 汉字统计
  11. Jquery 点击空白处消失
  12. action接收到来自jsp页面的请求时出现中文乱码问题处理方法
  13. 城通网盘,千军万马,千脑网盘,119g网盘哪个适合做网赚?
  14. Git学习(1)-本地版本库的创建
  15. ArcGIS For Flex报错二
  16. python中的MySQL使用 + pickle使用
  17. springboot+vue前后端分离,nginx代理配置 tomcat 部署war包详细配置
  18. centos7安装ceph-luminous(1 mon+2 osd)
  19. User_Agent大全
  20. 第十一周(11.24-12.01)----ptim测试程序运行速度

热门文章

  1. Redis哨兵集群创建脚本--v1
  2. appium移动端自动化测试环境搭建windows-appium-android
  3. Talk About AWS Aurora for MySQL max_connections parameter Calculation | 浅谈AWS Aurora for MySQL数据库中 max_connections参数的计算
  4. FileBeat yml配置文件 -常用参数详解
  5. python os 模块的使用
  6. java学习第六天2020/7/11
  7. python 面向对象专题(九):特殊方法 (二)__get__、__set__、__delete__ 描述符(二)覆盖型与非覆盖型描述符对比
  8. Mariadb之主从复制的读写分离
  9. C# Dictionary的底层实现解析
  10. 软件测试中的微信小程序怎么测试?