find函数
发布日期:2021-05-15 01:02:43 浏览次数:12 分类:精选文章

本文共 1375 字,大约阅读时间需要 4 分钟。

1. find()

find()函数用于在字符串中查找目标子串的第一个出现位置。如果找到目标字符串,则返回其起始索引;如果未找到,则返回-1。这个函数从字符串的开头开始进行查找。

示例代码如下:```cpp#include

using namespace std;int main() { string s, ss; cin >> s >> ss; int a = s.find(ss); cout << a;}

说明:查找成功时,输出第一个匹配位置,否则返回-1。

2. find(from_pos)

find(from_pos)函数和find()相似,只是从指定的位置开始查找目标子串的第一次出现位置。这对于处理包含重复文本的字符串非常有用。

示例代码如下:

#include 
using namespace std;int main() { string s, ss; cin >> s >> ss; int a = s.find(ss, 2); cout << a;}

3. rfind()

rfind()函数类似于find,但它从字符串的末尾开始逆向查找目标子串的位置。如果找到匹配项,返回其最后一位的位置;否则返回-1。这对于处理仅在字符串末尾出现特定模式的文本非常有用。

4. find_first_of()

find_first_of()函数用于查找目标子串在字符串中某个字符第一次出现的位置。与find()不同的是,find_first_of()仅寻找子串的首字母,而不是整个子串的全部字符匹配。这对于需要快速定位子串起始位置的场景非常有用。

示例代码如下:

#include 
using namespace std;int main() { string s1, s2; cin >> s1 >> s2; int ans = s1.find_first_of(s2); cout << ans;}

5. find_last_of()

find_last_of()函数与find_first_of()类似,但它从字符串的末尾开始逆向查找目标子串的位置。如果找到匹配项,返回其最后一位的位置;否则返回-1。这对于处理仅在字符串末尾出现特定模式的文本非常有用。

6. find_first_not_of()

find_first_not_of()函数用于查找字符串中第一个与目标子串不匹配的字符位置。这个函数可以帮助开发者快速定位字符串中不符合子串要求的首字符位置。这对于处理 trimmed 或 trimmed 的数据非常有用。

示例代码如下:

#include 
using namespace std;int main() { string s1, s2; cin >> s1 >> s2; int ans = s1.find_first_not_of(s2); cout << ans;}

说明:如果找到不匹配的字符,则返回该位置的索引;否则返回-1。

```

以上是对相关函数的详细介绍,包含了各个函数的功能描述和示例代码,方便开发者理解和使用。

上一篇:2020.11.27哈尔滨理工大学软件与微电子学院程序设计竞赛(同步赛)
下一篇:串的模式匹配算法:BF 和KMP

发表评论

最新留言

网站不错 人气很旺了 加油
[***.192.178.218]2025年04月19日 02时31分42秒