std::string 类中find_first_not_of ()函数

来源:互联网 发布:java时钟代码 编辑:程序博客网 时间:2024/06/06 00:05

使用string的empty()函数判断字符串是否为空,但不能判断是不是“_ ”(_ 表示空格)或者连续空格“___”;

此时可以使用 find_first_not_of ()函数进行判断

std::string strSrc="111"; // " 222" 、 "   " 、 " "、""string::npos == strSrc.find_first_not_of(" ") //判断非空,(查找第一个非空格字符,查不到则返回npos)

find_first_not_of () 找到第一个非入参字符并返回所在位置(地址);即在字符串中查找缺少的字符。


附:

size_t find_first_not_of ( const string& str, size_t pos = 0 ) const;
size_t find_first_not_of ( const char* s, size_t pos, size_t n ) const;
size_t find_first_not_of ( const char* s, size_t pos = 0 ) const;
size_t find_first_not_of ( char c, size_t pos = 0 ) const;

Searches for the first character in the object which is not part of either str, s or c, and returns its position.

When pos is specified the search only includes characters on or after position pos, ignoring any content in the previous character positions.