📌  相关文章
📜  在 C++ 中访问给定字符串中字符的不同方法

📅  最后修改于: 2022-05-13 01:54:56.803000             🧑  作者: Mango

在 C++ 中访问给定字符串中字符的不同方法

String 类将字符存储为字节序列,具有允许访问单字节字符的功能。有几种方法可以访问字符串的子字符串和单个字符。字符串类为此目的支持以下函数:

  1. 运算符[]
  2. 在()
  3. substr()
  4. 寻找()
  5. find_first_of()
  6. find_last_of()

让我们开始详细讨论这些方法。

运算符[]

运算符[] 返回对指定为参数的位置处的字符的引用。

句法-

下面是实现运算符[]函数的 C++ 程序 -

C++
// C++ program to implement
// the operator[]
#include 
using namespace std;
 
// Driver code
int main()
{
    string str("GeeksforGeeks");
    cout << str[4];
    return 0;
}


C++
// C++ program to implement
// at()
#include 
using namespace std;
 
// Driver code
int main()
{
    string s("GeeksForGeeks");
    cout << s.at(4);
    return 0;
}


C++
// C++ program to implement
// the substr() function
#include 
using namespace std;
 
// Driver code
int main()
{
    string s("GeeksForGeeks");
    cout << s.substr(1, 5);
 
    return 0;
}


C++
// C++ program to implement
// the find() function
#include 
using namespace std;
 
// Driver code
int main()
{
    string s("GeeksForGeeks");
    cout << s.find("For");
 
    return 0;
}


C++
// C++ program to implement
// the find_first_of() function
#include 
using namespace std;
 
// Driver code
int main()
{
    string s("GeeksForGeeks");
    cout << s.find_first_of('s');
    return 0;
}


C++
// C++ program to implement
// the find_last_of() function
#include 
using namespace std;
 
// Driver code
int main()
{
    string s("GeeksForGeeks");
    cout << s.find_last_of('s');
    return 0;
}


输出
s

在()

at()函数用于访问单个字符。使用这个函数,可以从给定的字符中字符串字符地访问。

句法-

下面是实现 at() 的 C++-

C++

// C++ program to implement
// at()
#include 
using namespace std;
 
// Driver code
int main()
{
    string s("GeeksForGeeks");
    cout << s.at(4);
    return 0;
}
输出
s

substr()

substr()函数用于从给定字符串中检索子字符串。这个函数有两个值startlen

  • 字符串.h 是字符串函数所需的头文件。
  • 起始索引为 0。

句法-

下面是实现 substr()函数的 C++ 程序 -

C++

// C++ program to implement
// the substr() function
#include 
using namespace std;
 
// Driver code
int main()
{
    string s("GeeksForGeeks");
    cout << s.substr(1, 5);
 
    return 0;
}
输出
eeksF

寻找()

find()函数用于在被调用的指定字符串中查找第一次出现的子字符串。

  • 它返回字符串中子字符串第一次出现的索引。
  • 起始位置的默认值为 0。
  • 如果未找到子字符串,则函数返回 -1。

句法-

下面是实现 find()函数的 C++ 程序 -

C++

// C++ program to implement
// the find() function
#include 
using namespace std;
 
// Driver code
int main()
{
    string s("GeeksForGeeks");
    cout << s.find("For");
 
    return 0;
}
输出
5

find_first_of()

find_first_of()函数用于查找与参数中指定的任何字符匹配的第一个字符。这个函数有两个参数strpos。

句法-

下面是实现 find_first_of()函数的 C++ 程序 -

C++

// C++ program to implement
// the find_first_of() function
#include 
using namespace std;
 
// Driver code
int main()
{
    string s("GeeksForGeeks");
    cout << s.find_first_of('s');
    return 0;
}
输出
4

find_last_of()

find_last_of()函数用于从给定字符串中查找指定字符最后出现的位置。

句法-

下面是实现 find_last_of()函数的 C++ 程序 -

C++

// C++ program to implement
// the find_last_of() function
#include 
using namespace std;
 
// Driver code
int main()
{
    string s("GeeksForGeeks");
    cout << s.find_last_of('s');
    return 0;
}
输出
12