Como encontrar vogais, consoantes, dígitos e caracteres especiais em uma string

Uma string é uma sequência de caracteres. Esses caracteres podem ser vogais, consoantes, dígitos ou quaisquer caracteres especiais. Neste artigo, você aprenderá como encontrar a contagem total de vogais, consoantes, dígitos e caracteres especiais em qualquer string.

Exemplos para compreender o problema

Exemplo 1 : Seja a string fornecida "Welcome 2 #MUO".

s = "Bem-vindo 2 #MUO"

Existem 5 vogais na string dada: e , o , e , U e O.

Existem 5 consoantes na string dada: W , l , c , m , e M.

Há 1 dígito na string fornecida: 2 .

Existem 3 caracteres especiais na string fornecida: # e dois espaços em branco.

Exemplo 2: Seja a string fornecida "This is @ inpuT String 2".

s = "This Is @ InpuT String 2"

Existem 5 vogais na string dada: i , I , I , u e i .

Existem 12 consoantes na string dada: T , h , s , s , n , p , T , S , t , r , n e g .

Há 1 dígito na string fornecida: 2 .

Existem 6 caracteres especiais na string fornecida: @ e cinco espaços em branco.

Nota: o espaço em branco é tratado como um caractere especial na string.

Abordagem para contar vogais, consoantes, dígitos e caracteres especiais em uma string

Você pode encontrar o número total de vogais, consoantes, dígitos e caracteres especiais em uma string seguindo a abordagem abaixo:

  1. Inicialize variáveis ​​para contar o número total de vogais, consoantes, dígitos e caracteres especiais.
  2. Percorre a string fornecida caractere por caractere.
  3. Verifique se o caractere pertence à família do alfabeto, família de dígitos ou família de caracteres especiais.
  4. Se o caractere pertencer à família do alfabeto, primeiro converta o caractere para minúsculas e depois verifique se o caractere é uma vogal ou consoante.
    • Se o caractere for uma vogal, aumente o valor da variável que armazena a contagem total de vogais em uma string.
    • Do contrário, se o caractere for uma consoante, aumente o valor da variável que armazena a contagem total de consoantes em uma string.
  5. Se o caractere pertencer à família de dígitos, aumente o valor da variável que armazena a contagem total de dígitos em uma string.
  6. Se o caractere pertencer à família de caracteres especiais, aumente o valor da variável que armazena a contagem total de caracteres especiais em uma string.

Programa C ++ para contar vogais, consoantes, dígitos e caracteres especiais em uma string

Abaixo está o programa C ++ para contar vogais, consoantes, dígitos e caracteres especiais em uma string:

Relacionado: Os melhores canais codificados do YouTube para aprender programação

 #include <iostream>
using namespace std;
void countCharactersCategory(string s)
{
int totalSpecialCharacters = 0, totalDigits = 0, totalVowels = 0, totalConsonants = 0;
for (int i = 0; i < s.length(); i++)
{
char c = s[i];
// Alphabets family
if ( (c >= 'a' && c <= 'z') || (c >= 'A' && c <= 'Z') )
{
// Converting character to lower case
c = tolower(c);
// Vowels
if (c == 'a' || c == 'e' || c == 'i' || c == 'o' || c == 'u')
{
totalVowels++;
}
// Consonants
else
{
totalConsonants++;
}
}
// Digits family
else if (c >= '0' && c <= '9')
{
totalDigits++;
}
// Special characters family
else
{
totalSpecialCharacters++;
}
}
cout << "Total no. of vowels in the given string: " << totalVowels << endl;
cout << "Total no. of consonants in the given string: " << totalConsonants << endl;
cout << "Total no. of digits in the given string: " << totalDigits << endl;
cout << "Total no. of special characters in the given string: " << totalSpecialCharacters << endl;
}
// Driver code
int main()
{
// Test case: 1
string s1 = "Welcome 2 #MUO";
cout << "Input string: " << s1 << endl;
countCharactersCategory(s1);
// Test case: 2
string s2 = "This Is @ InpuT String 2";
cout << "Input string: " << s2 << endl;
countCharactersCategory(s2);
return 0;
}

Resultado:

 Input string: Welcome 2 #MUO
Total no. of vowels in the given string: 5
Total no. of consonants in the given string: 5
Total no. of digits in the given string: 1
Total no. of special characters in the given string: 3
Input string: This Is @ InpuT String 2
Total no. of vowels in the given string: 5
Total no. of consonants in the given string: 12
Total no. of digits in the given string: 1
Total no. of special characters in the given string: 6

Programa Python para contar vogais, consoantes, dígitos e caracteres especiais em uma string

Abaixo está o programa Python para contar vogais, consoantes, dígitos e caracteres especiais em uma string:

Relacionado: Aprendendo Python? Veja como manipular strings

 
def countCharactersCategory(s):
totalSpecialCharacters = 0
totalDigits = 0
totalVowels = 0
totalConsonants = 0

for i in range(0, len(s)):
c = s[i]
# Alphabets family
if ( (c >= 'a' and c = 'A' and c = '0' and c <= '9'):
totalDigits += 1
# Special characters family
else:
totalSpecialCharacters += 1
print("Total no. of vowels in the given string: ", totalVowels)
print("Total no. of consonants in the given string: ", totalConsonants)
print("Total no. of digits in the given string: ", totalDigits)
print("Total no. of special characters in the given string: ", totalSpecialCharacters)

# Driver code
# Test case: 1
s1 = "Welcome 2 #MUO"
print("Input string: ", s1)
countCharactersCategory(s1)
# Test case: 2
s2 = "This Is @ InpuT String 2"
print("Input string: ", s2)
countCharactersCategory(s2)

Resultado:

 Input string: Welcome 2 #MUO
Total no. of vowels in the given string: 5
Total no. of consonants in the given string: 5
Total no. of digits in the given string: 1
Total no. of special characters in the given string: 3
Input string: This Is @ InpuT String 2
Total no. of vowels in the given string: 5
Total no. of consonants in the given string: 12
Total no. of digits in the given string: 1
Total no. of special characters in the given string: 6

Relacionado: Como validar strings usando métodos booleanos em Python

Programa C para contar vogais, consoantes, dígitos e caracteres especiais em uma string

Abaixo está o programa C para contar vogais, consoantes, dígitos e caracteres especiais em uma string:

 #include <stdio.h>
#include <ctype.h>
#include <string.h>
void countCharactersCategory(char s[])
{
int totalSpecialCharacters = 0, totalDigits = 0, totalVowels = 0, totalConsonants = 0;
for (int i = 0; i < strlen(s); i++)
{
char c = s[i];
// Alphabets family
if ( (c >= 'a' && c <= 'z') || (c >= 'A' && c <= 'Z') )
{
// Converting character to lower case
c = tolower(c);
// Vowels
if (c == 'a' || c == 'e' || c == 'i' || c == 'o' || c == 'u')
{
totalVowels++;
}
// Consonants
else
{
totalConsonants++;
}
}
// Digits family
else if (c >= '0' && c <= '9')
{
totalDigits++;
}
// Special characters family
else
{
totalSpecialCharacters++;
}
}
printf("Total no. of vowels in the given string: %d ⁠n",totalVowels);
printf("Total no. of consonants in the given string: %d ⁠n",totalConsonants);
printf("Total no. of digits in the given string: %d ⁠n",totalDigits);
printf("Total no. of special characters in the given string: %d ⁠n",totalSpecialCharacters);
}
// Driver code
int main()
{
// Test case: 1
char s1[] = "Welcome 2 #MUO";
printf("Input string: %s
",s1);
countCharactersCategory(s1);
// Test case: 2
char s2[] = "This Is @ InpuT String 2";
printf("Input string: %s
",s2);
countCharactersCategory(s2);
return 0;
}

Resultado:

 Input string: Welcome 2 #MUO
Total no. of vowels in the given string: 5
Total no. of consonants in the given string: 5
Total no. of digits in the given string: 1
Total no. of special characters in the given string: 3
Input string: This Is @ InpuT String 2
Total no. of vowels in the given string: 5
Total no. of consonants in the given string: 12
Total no. of digits in the given string: 1
Total no. of special characters in the given string: 6

Programa JavaScript para contar vogais, consoantes, dígitos e caracteres especiais em uma string

Abaixo está o programa JavaScript para contar vogais, consoantes, dígitos e caracteres especiais em uma string:

 <script>
function countCharactersCategory(s) {
var totalSpecialCharacters = 0, totalDigits = 0, totalVowels = 0, totalConsonants = 0;
for (var i = 0; i < s.length; i++) {
var c = s[i];
// Alphabets family
if ( (c >= "a" && c <= "z") || (c >= "A" && c <= "Z") ) {
// Converting character to lower case
c = c.toLowerCase();
// Vowels
if (c == "a" || c == "e" || c == "i" || c == "o" || c == "u") {
totalVowels++;
}
// Consonants
else {
totalConsonants++;
}
}
// Digits family
else if (c >= "0" && c <= "9") {
totalDigits++;
}
// Special characters family
else {
totalSpecialCharacters++;
}
}
document.write("Total no. of vowels in the given string: " + totalVowels + "<br>");
document.write("Total no. of consonants in the given string: " + totalConsonants + "<br>");
document.write("Total no. of digits in the given string: " + totalDigits + "<br>");
document.write("Total no. of special characters in the given string: " + totalSpecialCharacters + "<br>");
}
// Test case: 1
var s1 = "Welcome 2 #MUO";
document.write("Input string: " + s1 + "<br>");
countCharactersCategory(s1);
// Test case: 2
var s2 = "This Is @ InpuT String 2";
document.write("Input string: " + s2 + "<br>");
countCharactersCategory(s2);
</script>

Resultado:

 Input string: Welcome 2 #MUO
Total no. of vowels in the given string: 5
Total no. of consonants in the given string: 5
Total no. of digits in the given string: 1
Total no. of special characters in the given string: 3
Input string: This Is @ InpuT String 2
Total no. of vowels in the given string: 5
Total no. of consonants in the given string: 12
Total no. of digits in the given string: 1
Total no. of special characters in the given string: 6

Se você quiser dar uma olhada no código-fonte completo usado neste artigo, aqui está o repositório GitHub .

Pratique problemas de cordas para suas entrevistas

Problemas de string são uma das perguntas mais frequentes em concursos de codificação e entrevistas. Compreenda os fundamentos das cordas e pratique problemas famosos para se tornar um engenheiro melhor.

Remover caracteres duplicados de uma string, encontrar o caractere que ocorre no máximo em uma string e verificar se uma string é um palíndromo são alguns dos famosos problemas das strings.

Por que não tentar esses problemas também?