public member function
<string>
string (1) | size_type find_last_not_of (const basic_string& str, size_type pos = npos) const; |
---|
c-string (2) | size_type find_last_not_of (const charT* s, size_type pos = npos) const; |
---|
buffer (3) | size_type find_last_not_of (const charT* s, size_type pos, size_type n) const; |
---|
character (4) | size_type find_last_not_of (charT c, size_type pos = npos) const; |
---|
string (1) | size_type find_last_not_of (const basic_string& str, size_type pos = npos) const noexcept; |
---|
c-string (2) | size_type find_last_not_of (const charT* s, size_type pos = npos) const; |
---|
buffer (3) | size_type find_last_not_of (const charT* s, size_type pos, size_type n) const; |
---|
character (4) | size_type find_last_not_of (charT c, size_type pos = npos) const noexcept; |
---|
Find non-matching character in string from the end
Searches the basic_string for the last character that does not match any of the characters specified in its arguments.
當指定pos時,搜尋僅包括位置pos或之前的字元,忽略pos之後的任何可能出現的情況。
該函式使用traits_type::eq來確定字元的等價性。
引數
- str
- Another basic_string with the set of characters to be used in the search.
- pos
- 字串中要考慮在搜尋中的最後一個字元的位置。
任何大於或等於字串長度的值(包括basic_string::npos)都意味著搜尋整個字串。
注意:第一個字元用值表示0(不是1).
- s
- 指向字元陣列的指標。
如果指定了引數n(3),則陣列中的前n個字元用於搜尋。
否則(2),期望一個以空字元結尾的序列:用於搜尋的字元序列的長度由第一個出現的空字元確定。
- n
- 要搜尋的字元值的數量。
- c
- 要搜尋的單個字元。
charT是 basic_string 的字元型別(即,它的第一個模板引數)。
成員型別size_type是一種無符號整型型別。
返回值
第一個不匹配字元的位置。
If no such characters are found, the function returns basic_string::npos.
成員型別size_type是一種無符號整型型別。
示例
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
|
// string::find_last_not_of
#include <iostream>
#include <string>
int main ()
{
std::string str ("Please, erase trailing white-spaces \n");
std::string whitespaces (" \t\f\v\n\r");
std::string::size_type found = str.find_last_not_of(whitespaces);
if (found!=std::string::npos)
str.erase(found+1);
else
str.clear(); // str is all whitespace
std::cout << '[' << str << "]\n";
return 0;
}
|
[Please, erase trailing white-spaces]
|
複雜度
未指定,但通常最多是字串長度(或pos)乘以要匹配的字元數(最壞情況)的線性關係。
異常安全
如果已知s未指向足夠長的陣列,會導致未定義行為。
否則,該函式永遠不會丟擲異常(無丟擲保證)。