在这个 C++ 程序中,你将学习从字符串中删除所有字符,除了字母。
字符串可以定义为字符序列。在 C++ 中有两种类型的字符串,它们是:
在 C++ 中,你可以创建一个字符串对象来存储字符串。与使用数组不同,字符串没有固定长度。
我们的程序从用户那里获取一个字符串对象输入。然后声明两个字符串对象:string line 和 string temp。要求用户输入一个字符串。将用户输入的字符串读取到字符串对象 line 中。这里,我们使用函数 getline() 来获取用户输入的文本行。
用户输入的字符串存储在字符串对象 line 中。现在,我们必须从字符串中提取所有非字母字符。为此,我们必须将字符串的每个字符与“a 到 z”和“A 到 Z”的字母进行比较。要访问字符串中的每个元素,我们可以使用一个 for 循环。
获取每个字符,并使用 if 条件与字母进行比较。if ((line[i] >= 'a' && line[i] <= 'z') || (line[i] >= 'A' && line[i] <= 'Z')),如果它是字母,则将元素添加到对象 temp。Temp = temp + line[i]。最后,我们得到只包含字母的字符串并显示输出。
步骤 1: 调用头文件 iostream。
步骤 2: 使用 `namespace std.`。
步骤 3:打开整数类型主函数;int main()。
步骤 4: 声明两个字符串类型对象;string line; string temp;
步骤 5: 要求用户输入字符串。
步骤 6:使用函数 getline() 将字符串读取到对象 line 中。
步骤 7:从头开始访问字符串的字符,并将每个字符与字母 a 到 z 和 A 到 Z 进行比较。
步骤 8:如果匹配,则将字符存储到对象 temp 中。
步骤 9: 从对象 temp 中获取没有非字母字符的字符串。
步骤 10:显示字符串;
步骤 11:退出。
#include <iostream>
using namespace std;
int main() {
string line;
string temp = "";
cout << "Enter a string: ";
getline(cin, line);
for (int i = 0; i < line.size(); ++i) {
if ((line[i] >= 'a' && line[i] <= 'z') || (line[i] >= 'A' && line[i] <= 'Z')) {
temp = temp + line[i];
}
}
line = temp;
cout << "Output String: " << line;
return 0;
}
Enter a string: l4ea@rne$$45tuto87ria**ls Output String: learnetutorials