gpt4 book ai didi

c++ - 在 C++ 中读取行时过滤非字母数字字符?

转载 作者:行者123 更新时间:2023-11-28 03:35:02 27 4
gpt4 key购买 nike

是否可以仅从给定的输入行读取字母数字字符而忽略 C/C++ 中的其他所有内容?我正在尝试一次阅读整行。

假设我们要读一行:

 aaa, bbb, ccc .

在这里,我的意图是在接受输入时忽略逗号、点和空格。

最佳答案

你可以通过多种方式做到这一点,例如最简单的是读取整行然后删除你不想要的位:

#include <algorithm>
#include <iostream>
#include <string>
#include <functional>
#include <ctype.h>

int main() {
std::string line;
while (std::getline(std::cin, line)) {
line.erase(std::remove_if(line.begin(), line.end(), std::not1(std::ptr_fun(isalnum))), line.end());
std::cout << line << "\n";
}
}

读取一行,然后删除所有为 isalnum 返回 false 的字符。 (在 C++11 中你可以稍微简化一下)

关于c++ - 在 C++ 中读取行时过滤非字母数字字符?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11170169/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com