C++ string find方法與substr
阿新 • • 發佈:2019-01-04
一.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所要查詢的字串了,只要原字串裡找到了任意一個你所要查詢的字串裡的字元,就馬上返回。
這個返回的結果會是1,因為找到了原字串中找到了b;string a=abcd; a.find_first_of("bh");
二.substr()
substr(size_type __pos, optional size_type __n)
寫的更通俗易懂點就是
sub(start,length)
如果第二個引數不寫,就是從start到字串結尾。
需要注意的是:比如說我們獲得原字串中從m-n的子串,那麼應該寫成(m,n-m+1);因為字串下標是從0開始,而長度的計算是從1開始。