1. 程式人生 > >C++ string find方法與substr

C++ string find方法與substr

一.find()

find(const std::basic_string<char> &__str, optional size_type __pos);

第二個引數是可選引數,如果有,就是從pos位置開始,往後尋找指定的字元或是字串.

需要注意的是:find如果沒找到,會返回一個該字串所特有的標識string.nops,而不是null。

find_first_of,find_last_of等函式與find函式差不多。

需要注意的是:find_first_of和find_last_of所要查詢的字串了,只要原字串裡找到了任意一個你所要查詢的字串裡的字元,就馬上返回。

string a=abcd;
a.find_first_of("bh");
這個返回的結果會是1,因為找到了原字串中找到了b;

二.substr()

substr(size_type __pos, optional size_type __n)

寫的更通俗易懂點就是

sub(start,length)

如果第二個引數不寫,就是從start到字串結尾。

需要注意的是:比如說我們獲得原字串中從m-n的子串,那麼應該寫成(m,n-m+1);因為字串下標是從0開始,而長度的計算是從1開始。