`
ljl_xyf
  • 浏览: 634644 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

string::npos在 c++ 的find_first_of判断是什么意思

    博客分类:
  • c++
阅读更多

string::npos的解释如下:

 

昨天写的逻辑判断,对find返回npos的意义理解的很模糊,查看了cpp primer后发现下面的内容,得知find方法返回一个名为 string::npos 的特殊值,说明查找没有匹配。粘上以备记忆.

The string class provides six search functions, each named as a variant of find . The operations all return a string::size_type value that is the index of where the match occurred, or a special value named string::npos if there is no match. The string class defines npos as a value that is guaranteed to be greater than any valid index.

string 类提供了 6 种查找函数,每种函数以不同形式的 find 命名。这些操作全都返回 string::size_type 类型的值,以下标形式标记查找匹配所发生的位置;或者返回一个名为 string::npos 的特殊值,说明查找没有匹配。string 类将 npos 定义为保证大于任何有效下标的值。

 

 

 

例如:

 

string str="http://www.my400800.cn ";

pos=str.find_first_of("www");

if(pos!=string::npos)

{

 

 

}

分享到:
评论

相关推荐

    C++字符串中检测特定的字符串

    2. **`FindOneOf()`**:与`std::string::find_first_of()`对应,返回第一个匹配字符的索引。例如: ```cpp CString str = _T("abcdef"); int index = str.FindOneOf(_T("bc")); ``` 3. **`FindLastOf()`**:类似...

    C string深入详解2.0版_C++_string_

    - `find_last_of(set, pos=npos)`查找最后一个出现在set中的字符的位置。 - `find_first_not_of(set, pos=0)`查找第一个不在set中的字符的位置。 - `find_last_not_of(set, pos=npos)`查找最后一个不在set中的...

    C++_String

    `size_t find_first_of(const string& str, size_t pos = 0) const;` 找到字符串中首次出现的指定字符或子串的位置。例如,`s.find_first_of("abc", 0)` 寻找字符串中首次出现的 "abc" 中的字符。 **1.2.18 find_...

    C++ STL std::string详细讲解

    - `find_first_of()`: 查找第一个出现的指定集合中的字符。 - `find_last_of()`: 查找最后一个出现的指定集合中的字符。 - `substr()`: 提取子串,例如`str.substr(pos, len)`。 6. **拷贝与赋值**: - `copy()...

    C++实现获取IP程序

    size_t start = line.find_first_of(": =") + 1; size_t end = line.find_last_of(" ."); if (start != std::string::npos && end != std::string::npos) { ips.push_back(line.substr(start, end - start)); }...

    string类的常用方法

    - `find_last_of(const std::string& str, size_t pos = npos)`:查找最后一个出现的在子串中的字符。 - `find_first_not_of(const std::string& str, size_t pos = 0)`:查找第一个不在子串中的字符。 - `find_...

    深入C++ string.find()函数的用法总结

    除了基本的 `find()`,C++ `std::string` 还提供了其他变体,如 `find_first_of()`, `find_first_not_of()`, `find_last_of()` 和 `find_last_not_of()`。这些函数帮助我们实现更复杂的搜索需求。 1. `find_first_...

    C++实现字符串的检索.rar

    - `find_first_not_of()`和`find_last_not_of()`:查找第一个不包含在指定字符集中的字符。 ```cpp size_t first_diff = str.find_first_not_of("aeiou"); // 查找第一个非元音字母 size_t last_diff = str.find...

    C++_STL_示例

    - `find_last_of()`, `find_first_not_of()`, `find_last_not_of()`:分别用于查找最后出现的匹配字符、首次不匹配的字符和最后不匹配的字符。 - `insert()`:在字符串的指定位置插入字符或字符串。 - `replace()...

    string 去掉空格

    3. **查找第一个非空格字符的位置**:使用`find_first_not_of(' ')`函数找到第一个非空格字符的位置。 4. **删除从字符串开头到第一个非空格字符之前的部分**:如果找到了非空格字符,则使用`erase`函数删除从字符串...

    C++ String实例代码

    - `find_first_of()`: 查找第一个出现在给定字符集中字符的位置。 - `c_str()`: 转换为C风格的字符数组(const char*)。 - `data()`: 类似`c_str()`,但不保证末尾有空字符。 6. **流操作**: - C++标准库中的...

    每天学点C++(C++实例教程:教程+源码)01string容器.zip

    还可以使用 `find()`、`find_first_of()`、`find_last_of()` 等函数搜索子串,以及 `substr()` 创建子串。例如,查找字符串中的子串: ```cpp size_t pos = str1.find("World"); if (pos != std::string::npos) { ...

    20120923_字符串替换(C++)1

    在C++标准库中,虽然没有直接的`replace`函数,但我们可以结合`find_first_of()`, `find_first_not_of()`, 和`substr()`等方法来实现类似的功能。例如,如果我们想要替换所有`oldStr`,可以这样实现: ```cpp std::...

    C++ string 字符串查找匹配实例代码

    在写C++程序中,总会遇到要从一个字符串中查找一小段子字符串的情况,...find_first_of():在一个目标串中进行查找,返回值是第一个与指定字符组中任何字符匹配的字符位置。如果没有查找到匹配的内容,则返回npos。 fin

    C++编程系列之字符串的查找和提取

    5. `find_first_not_of()`: 查找字符串中首次出现不在给定字符集中的字符的位置。 6. `find_last_not_of()`: 类似`find_first_not_of()`,但从后向前查找。 四、字符串提取 1. `substr()`: 提取字符串的一部分,如`...

    标准C++中string用法详解

    在ANSI标准C++中,`string`是处理文本数据时非常重要的工具之一,它提供了丰富的功能来方便地操作字符串。本文将详细介绍`string`的基本使用方法及其常用的操作函数。 ##### 1.1 `string`类型的使用 `string`类型...

    pfisterer-c++-5-c++-library-iostreams

    - `find_first_of`, `find_last_of`, `find_first_not_of`, `find_last_not_of`等方法提供了更多的搜索功能。 ### 总结 通过上述介绍可以看出,C++中的`std::string`类极大地提高了字符串处理的安全性和便利性。...

Global site tag (gtag.js) - Google Analytics