(转载)C++ string中find() ,rfind() 等函数 用法总结及示例

string中 find()的应用  (rfind() 类似,只是从反向查找)

原型如下:

(1)size_t find (const string& str, size_t pos = 0) const;  //查找对象--string类对象

(2)size_t find (const char* s, size_t pos = 0) const; //查找对象--字符串

(3)size_t find (const char* s, size_t pos, size_t n) const;  //查找对象--字符串的前n个字符

(4)size_t find (char c, size_t pos = 0) const;  //查找对象--字符

结果:找到 -- 返回 第一个字符的索引

没找到--返回   string::npos

其他还有  find_first_of(), find_last_of(), find_first_not_of(), find_last_not_of()

作用是查找   字符串中 任一个字符 满足的查找条件

string snake1("cobra");

int where = snake1.find_first_of("hark");

返回3  因为 "hark"中 各一个字符 在 snake1--cobra 中第一次出现的是  字符‘r‘(3为 cobra 中‘r‘的索引)

同理:

int where = snake1.find_last_of("hark");

返回4  因为 "hark"中 各一个字符 在 snake1--cobra 中最后一次出现的是  字符‘a‘(3为 cobra 中‘r‘的索引)

时间: 2024-09-30 07:29:16

(转载)C++ string中find() ,rfind() 等函数 用法总结及示例的相关文章

string中find()和substr()的用法

string中find()和substr()的用法 查找从指定位置开始的 string s="123453"; cout<<s.find('3')<<endl; cout<<s.find('3',2); 输出: 2 2 当找不到的时候,函数会返回一个s.npos 找第一个目标字符串的位置和最后一个的位置(不是全匹配): string s="123453"; cout<<s.find_first_of("34&

python中enumerate()函数用法

python中enumerate()函数用法 先出一个题目:1.有一 list= [1, 2, 3, 4, 5, 6]  请打印输出:0, 1 1, 2 2, 3 3, 4 4, 5 5, 6 打印输出, 2.将 list 倒序成 [6, 5, 4, 3, 2, 1] 3.将a 中的偶数挑出 *2 ,结果为 [4, 8, 12] 这个例子用到了python中enumerate的用法.顺便说一下enumerate在for循环中得到计数的用法,enumerate参数为可遍历的变量,如 字符串,列表等

JavaScript 中对变量和函数声明的提前示例

如题所示,看下面的示例(可以使用Chrome浏览器,然后F12/或者右键,审查元素.调出开发者工具,进入控制台console输入)(使用技巧: 控制台输入时Shift+Enter可以中途代码换行) var name = "xiaoming"; (function(){ var name = name || "小张"; console.info(name); })();// 小张 (function(){ name = name || "小张";

【转载】JS中bind方法与函数柯里化

原生bind方法 不同于jQuery中的bind方法只是简单的绑定事件函数,原生js中bind()方法略复杂,该方法上在ES5中被引入,大概就是IE9+等现代浏览器都支持了(有关ES5各项特性的支持情况戳这里ECMAScript 5 compatibility table),权威指南上提到在ES3中利用apply模拟该方法的实现(JS权威指南中函数那章), 但无法真实还原该方法, 这也是真bind方法中的有趣特性. (原文这边理解有问题, 这段话的意思如果结合犀牛书上下文的意思, 再结合犀牛书中

String 中的几个函数的使用方法

String str1,str2; String.equals(): 实现源代码: public boolean equals(Object anObject) {if (this == anObject) { return true;}if (anObject instanceof String) { String anotherString = (String)anObject; int n = count; if (n == anotherString.count) { char v1[]

python中的内置函数getattr()介绍及示例

在python的官方文档中:getattr()的解释如下: ? 1 2 3 getattr(object, name[, default]) Return the value of the named attribute of object. name must be a string. If the string is the name of one of the object's attributes, the result is the value of that attribute. F

php中sprintf与printf函数用法区别

下面是一个示例:四舍五入保留小数点后两位 <?php $num1 = 21; echo sprintf("%0.2f",$num1)."<br />"; //输出 21.00 $num2 = 16.3287; echo sprintf("%0.2f",$num2)."<br />"; //输出 16.33 $num3 = 32.12329; echo sprintf("%0.2f&quo

(转载)Spring mvc中@RequestMapping 6个基本用法小结

小结下spring mvc中的@RequestMapping的用法. 1)最基本的,方法级别上应用,例如: Java代码 @RequestMapping(value="/departments") public String simplePattern(){ System.out.println("simplePattern method was called"); return "someResult"; } 则访问http://localho

DB2中的ROW_NUMBER() OVER()函数用法

1.row_number() over()排序功能: (1) row_number() over()分组排序功能: 在使用 row_number() over()函数时候,over()里头的分组以及排序的执行晚于 where group by  order by 的执行. partition by 用于给结果集分组,如果没有指定那么它把整个结果集作为一个分组,它和聚合函数不同的地方在于它能够返回一个分组中的多条记录,而聚合函数一般只有一个反映统计值的记录. 例如:employee,根据部门分组排