C++ string find方法与substr

一.find()

find(const std::basic_string &__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开始。

你可能感兴趣的:(C++)