C++如何检查cin输入是AZ模式

Bao*_*hen 0 c++

C++如何检查cin输入是A-Z模式

我如何检查以下内容

cin >> input;

输入是A-Z指,不是数字,而是A指Z;

Fle*_*exo 5

假设input是一个字符串,您可以检查任何非大写字符,std::find_if以查找不适合的第一个字符.

#include <iostream>
#include <algorithm>
#include <cctype>
#include <string>

int main() {
  std::string input;
  std::cin >> input;
  std::cout << (std::find_if(input.begin(), input.end(), std::isupper) != input.end()) << "\n";
}
Run Code Online (Sandbox Code Playgroud)

如果你有C++ 11,可以进一步简化为:

std::all_of(input.begin(), input.end(), std::isupper)
Run Code Online (Sandbox Code Playgroud)

  • 或者看看[std :: any_of/all_of/none_of](http://en.cppreference.com/w/cpp/algorithm/all_any_none_of). (4认同)