c语言使用用的iostream,cmatch,完成.输入一串字符串,统计其中数字字符和英文字符的个数。
时间: 2023-02-05 14:52:41 浏览: 164
统计字符串中字母和数字个数
为了在 C 语言中使用 iostream 和 cmatch 实现上述功能,您需要先包含以下头文件:
```
#include <iostream>
#include <regex>
```
然后,您可以使用以下代码来实现功能:
```
int main()
{
// 定义字符串变量和计数器
std::string input;
int digit_count = 0;
int alpha_count = 0;
// 输入字符串
std::cin >> input;
// 使用正则表达式统计数字和字母的数量
std::regex digit_pattern("\\d");
std::regex alpha_pattern("[a-zA-Z]");
digit_count = std::distance(std::sregex_iterator(input.begin(), input.end(), digit_pattern), std::sregex_iterator());
alpha_count = std::distance(std::sregex_iterator(input.begin(), input.end(), alpha_pattern), std::sregex_iterator());
// 输出统计结果
std::cout << "数字字符数量: " << digit_count << std::endl;
std::cout << "英文字符数量: " << alpha_count << std::endl;
return 0;
}
```
在这段代码中,我们使用了 std::cin 来输入字符串,使用了 std::regex 和 std::sregex_iterator 来使用正则表达式匹配字符串中的数字和字母,并使用了 std::distance 函数来统计迭代器之间的距离,也就是匹配的数量。最后,我们使用 std::cout 输出统计结果。
阅读全文