2020-04-12

C++中find函數(shù)用法

C++中STL里提供了許多字符串操作的函數(shù),下面是字符串查找方面的部分函數(shù)用法簡介:

1.find()

查找第一次出現(xiàn)的目標字符串:

#include<iostream>

#include<cstdio>

using namespace std;


int main(){

string s1 = "abcdef";

string s2 = "de";

int ans = s1.find(s2) ; ? //在S1中查找子串S2

cout<<ans<<endl;

system("pause");

}

說明:如果查找成功則輸出查找到的第一個位置,否則返回-1;


查找從指定位置開始的第一次出現(xiàn)的目標字符串:


#include<iostream>

#include<csdtio>

using namespace std;




int main(){

string s1 = "abcdef";

string s2 = "de";

int ans = s1.find(s2, 2) ; ? //從S1的第二個字符開始查找子串S2

cout<<ans<<endl;

system("pause");

}


2.find_first_of()


查找子串中的某個字符最先出現(xiàn)的位置。find_first_of()不是全匹配,而find()是全匹配



#include<iostream>

#include<csdtio>

using namespace std;





int main(){

string s1 = "adedef";

string s2 = "dek";

int ans = s1.find_first_of(s2) ; ? //在S1中查找子串S2

cout<<ans<<endl;

system("pause");

}

其中find_first_of()也可以約定初始查找的位置:s1.find_first_of(s2, 2) ;


3.find_last_of()

這個函數(shù)與find_first_of()功能差不多,只不過find_first_of()是從字符串的前面往后面搜索,而find_last_of()是從字符串的后面往前面搜索。


4.rfind()

反向查找字符串,即找到最后一個與子串匹配的位置

5.find_first_not_of()

找到第一個不與子串匹配的位置

點贊 25

————————————————

版權(quán)聲明:本文為CSDN博主「小白的進階」的原創(chuàng)文章,遵循 CC 4.0 BY-SA 版權(quán)協(xié)議,轉(zhuǎn)載請附上原文出處鏈接及本聲明。

原文鏈接:https://blog.csdn.net/laobai1015/article/details/62426137

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容