返回列表 發帖

find() 與 rfind() 函式

我們可運用 find() 函式查找目標字串或字元於字串中的索引位置,若要由後往前查找則使用 rfind() 函式。當找不到目標對象時函式會回傳 -1 (須放進 int 變數後判讀)。

  1. #include<iostream>
  2. #include<cstdlib>
  3. #include<algorithm>
  4. using namespace std;
  5. int main()
  6. {
  7.     string str="Hello World!";
  8.     cout<<str<<endl;
  9.     cout<<"字元 'o' 的索引位置 (由前往後查找): "<<str.find('o')<<endl;
  10.     cout<<"字元 'o' 的索引位置 (由後往前查找): "<<str.rfind('o')<<endl;
  11.     cout<<"字串 \"llo\" 的索引位置 (由前往後查找): "<<str.find("llo")<<endl;
  12.     cout<<"字元 'l' 的索引位置 (由前往後自第4個位置開始查找): "<<str.find('l', 4)<<endl;
  13.     int res=str.find('a');
  14.     cout<<"字元 'a' 的索引位置 (由前往後查找): "<<res<<endl;
  15.     system("pause");
  16.     return 0;
  17. }
複製代碼

RE: find() 與 rfind() 函式-小測驗

回復 1# 方浩葦
問:以下程式碼,會輸出什麼:
  1. # include<string>
  2. # include<iostream>
  3. using namespace std;

  4. int main()
  5. {
  6.     string str = "123456123456123456";
  7.     cout<<str<<endl<<"0123456789ABCDEFGHJ"<<endl;//方便查看上面字符串的下标
  8.    
  9.     int pos = str.rfind("123");
  10.     cout<<pos<<endl;;
  11.     return 0;
  12. }
複製代碼
May

TOP

返回列表