c++ - 如何在字符串中查找字符?

标签 c++

我已经检查过与此类似的主题,但没有人能够解决这个问题。

所以,我必须在字符串中寻找一个字符,但它似乎不起作用。

if (tracciatonuovos.find('T'))
{
    nterminale++;
}

计数器不增加。但是如果我试图找到一个空白空间,它对我来说很重要,但字符串已满

see image of output

第一个值是字符串,第二个是字符串的长度,第三个是计数器“nterminale”的值。

最佳答案

使用 std::string 类中的查找函数

std::string mystr = "Some String with T";
size_t apos = mystr.find("T");

阅读更多相关信息 here

如果你想找到第一次出现的地方,请使用:

find_first_of

如果您想重复查找所有出现的特定字符,您还需要指定搜索起始位置,并且需要编写一个循环,例如:

size_t pos = 0;
while((pos = mystr.find(whatever, pos)) != std::string::npos)
{
   pos +=1;   
  // and your other logic here
}

关于c++ - 如何在字符串中查找字符?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58094879/

相关文章:

C++ 线程/vector 聊天

c++ - 如何同时使用 parallel_for_each 函数和 __declspec(dllexport) 属性

c++ - g++ 不允许在 lambda 中通过引用广义捕获 const 对象?

c++ - __int<size> 和 "char, short, int, long long int"有什么区别?

php - 我需要制作 2 个 C++ 脚本来在两个不同的平台 Windows Mobile 和 PHP 服务器上压缩和解压缩字符串

c++ - 插入 vector 时使用 lambda 的返回值而不是函数的返回值有意义吗?

c++ - boost 序列化多个对象

c++ - 如何在头文件中定义 const static std::string?

c++ - mergesort C++ 实现越界索引访问

c++ - 使用 cvtColor 转换单一颜色