这第二篇是介绍Find的用法的,专门用来介绍Find。
Find按功能分为六个方法,每个方法都拥有四个重载,总共二十四个方法。(24个find.汗..)
find 查找并返回位置。
rfind 反向查找并返回位置(只是从后往前进行查找,返回的位置是相对于串首而不是串尾)。
find_first_of 查找包含子串中的任何字符,返回第一个位置。
find_last_of 查找包含子串中的任何字符, 返回最后一个位置。
find_first_not_of 查找不包含子串中的任何字符 返回第一个位置。
find_last_not_of 查找不包含子串中的任何字符,返回最后一个位置。
以上方法若是没有找到就返回string::npos,所以可以这样判断是否找到一个字符串。
find_first_of的四个重载:
Find按功能分为六个方法,每个方法都拥有四个重载,总共二十四个方法。(24个find.汗..)
find 查找并返回位置。
rfind 反向查找并返回位置(只是从后往前进行查找,返回的位置是相对于串首而不是串尾)。
find_first_of 查找包含子串中的任何字符,返回第一个位置。
find_last_of 查找包含子串中的任何字符, 返回最后一个位置。
find_first_not_of 查找不包含子串中的任何字符 返回第一个位置。
find_last_not_of 查找不包含子串中的任何字符,返回最后一个位置。
以上方法若是没有找到就返回string::npos,所以可以这样判断是否找到一个字符串。
cout << (str.find("hallo") == string::npos ? "没找到" : "找到了") << endl;
find_first_of的四个重载:
参数pos是从第几个位置开始进行查找,其他的几个函数也拥有这样的重载。size_type find_first_of(const basic_string& s, size_type pos = 0)
size_type find_first_of(const charT* s, size_type pos, size_type n)
size_type find_first_of(const charT* s, size_type pos = 0)
size_type find_first_of(charT c, size_type pos = 0)