在C+中计算字符串中的元音+; 我需要在C++中计算元音。我用PHP编写了这个示例代码来实现这一点。在C++中有一个直接的实现方法吗? <?php $text = 'Sample Text'; echo strlen(preg_replace('/[^aeiouy]/i','',$text)); ?>

在C+中计算字符串中的元音+; 我需要在C++中计算元音。我用PHP编写了这个示例代码来实现这一点。在C++中有一个直接的实现方法吗? <?php $text = 'Sample Text'; echo strlen(preg_replace('/[^aeiouy]/i','',$text)); ?>,c++,string,C++,String,请注意,我是一名初学者。以下是显而易见的代码: std::string const vs("aeiouAEIOU"); int count = std::count_if(text.begin(), text.end(), [&](char c){ return vs.end() != std::find(vs.begin(), vs.end(), c); }); 最基本的方法是为编写一个循环,循环遍历字符串中的每个字符。在每次迭代中,检查当前字符是否为元音(大概是大写还是小写

请注意,我是一名初学者。

以下是显而易见的代码:

std::string const vs("aeiouAEIOU");
int count = std::count_if(text.begin(), text.end(),
    [&](char c){ return vs.end() != std::find(vs.begin(), vs.end(), c); });

最基本的方法是为编写一个循环,循环遍历字符串中的每个字符。在每次迭代中,检查当前字符是否为元音(大概是大写还是小写)。如果是这样,增加一个计数器。

“我的朋友今晚需要这个”。。。嗯,你的朋友,当然。。。本可以更好地掩饰你的家庭作业。很好地运用了现代语言的特点。不过,它只会拾取小写元音,而最初的PHP代码片段是不区分大小写的。@PeterR.Bloomfield:很公平-我完全不知道PHP(尽管我应该拾取正则表达式…)。我用了一个低技术的补丁。