Program to remove consonants from a String
Last Updated :
17 Aug, 2023
Given a string , the task is to remove all the consonants from the string and then print the string.
Examples:
Input: str= “Welcome to geeksforgeeks”
Output: eoe o eeoee
Input: str= “What is your name?”
Output: a i ou ae?
Approach: Traverse all the characters of the string, if the character is a consonant then remove it from the final answer.
Below is the implementation of the above approach:
C++
#include <bits/stdc++.h>
using namespace std;
bool isAlphabet( char ch)
{
if (ch >= 'a' && ch <= 'z' )
return true ;
if (ch >= 'A' && ch <= 'Z' )
return true ;
return false ;
}
string removeConsonants(string str)
{
vector< char > vowels = { 'a' , 'e' , 'i' , 'o' , 'u' ,
'A' , 'E' , 'I' , 'O' , 'U' };
unordered_set< char > set;
set.insert(vowels.begin(), vowels.end());
for ( int i = 0; i < str.length(); i++) {
if (isAlphabet(str[i])
&& (set.find(str[i]) == set.end())) {
str.replace(i, 1, "" );
i--;
}
}
return str == "" ? "No Vowel" : str;
}
int main()
{
string str = "GeeeksforGeeks - A Computer Science "
"Portal for Geeks" ;
cout << removeConsonants(str);
return 0;
}
|
Java
import java.util.Arrays;
import java.util.List;
class Test {
static boolean isAlphabet( char ch)
{
if (ch >= 'a' && ch <= 'z' )
return true ;
if (ch >= 'A' && ch <= 'Z' )
return true ;
return false ;
}
static String remConsonants(String str)
{
Character vowels[]
= { 'a' , 'e' , 'i' , 'o' , 'u' , 'A' , 'E' , 'I' , 'O' , 'U' };
List<Character> al = Arrays.asList(vowels);
StringBuffer sb = new StringBuffer(str);
for ( int i = 0 ; i < sb.length(); i++) {
if (isAlphabet(sb.charAt(i))
&& !al.contains(sb.charAt(i))) {
sb.replace(i, i + 1 , "" );
i--;
}
}
return sb.toString();
}
public static void main(String[] args)
{
String str
= "GeeeksforGeeks - A Computer Science Portal for Geeks" ;
System.out.println(remConsonants(str));
}
}
|
Python3
def isAlphabet(ch):
if (ch > = 'a' and ch < = 'z' ):
return True ;
if (ch > = 'A' and ch < = 'Z' ):
return True ;
return False ;
def remConsonants( str ):
vowels = [ 'a' , 'e' , 'i' , 'o' , 'u' , 'A' , 'E' , 'I' , 'O' , 'U' ]
sb = "";
for i in range ( len ( str )):
present = False ;
for j in range ( len (vowels)):
if ( str [i] = = vowels[j]):
present = True ;
break ;
if ( not isAlphabet( str [i]) or present ):
sb + = str [i];
return sb;
if __name__ = = '__main__' :
str = "GeeeksforGeeks - A Computer Science Portal for Geeks" ;
print (remConsonants( str ));
|
C#
using System;
using System.Collections;
using System.Collections.Generic;
using System.Linq;
class GFG{
static bool isAlphabet( char ch)
{
if (ch >= 'a' && ch <= 'z' )
return true ;
if (ch >= 'A' && ch <= 'Z' )
return true ;
return false ;
}
static string remConsonants( string str)
{
char []vowels = { 'a' , 'e' , 'i' , 'o' , 'u' ,
'A' , 'E' , 'I' , 'O' , 'U' };
string sb = "" ;
for ( int i = 0; i < str.Length; i++)
{
bool present = false ;
for ( int j = 0; j < vowels.Length; j++)
{
if (str[i] == vowels[j])
{
present = true ;
break ;
}
}
if (!isAlphabet(str[i]) || present )
{
sb += str[i];
}
}
return sb;
}
public static void Main( string [] args)
{
string str = "GeeeksforGeeks - A Computer Science Portal for Geeks" ;
Console.Write(remConsonants(str));
}
}
|
Javascript
<script>
function isAlphabet(ch) {
if (ch >= "a" && ch <= "z" ) return true ;
if (ch >= "A" && ch <= "Z" ) return true ;
return false ;
}
function remConsonants(str) {
var vowels =
[ "a" , "e" , "i" , "o" , "u" , "A" , "E" , "I" , "O" , "U" ];
var sb = "" ;
for ( var i = 0; i < str.length; i++) {
var present = false ;
for ( var j = 0; j < vowels.length; j++) {
if (str[i] === vowels[j]) {
present = true ;
break ;
}
}
if (!isAlphabet(str[i]) || present) {
sb += str[i];
}
}
return sb;
}
var str =
"GeeeksforGeeks - A Computer Science Portal for Geeks" ;
document.write(remConsonants(str));
</script>
|
Output
eeeoee - A oue iee oa o ee
Time Complexity: O(N)
Auxiliary Space: O(N)
Below is another program using Regular Expressions in Java
C++
#include <iostream>
#include <string>
#include <regex>
using namespace std;
string remVowel(string str)
{
return regex_replace(str,regex( "[BCDFGHJKLMNPQRSTVXZbcdfghjklmnpqrstvxz]" ), "" );
}
int main()
{
string str = "GeeeksforGeeks - A Computer Science Portal for Geeks" ;
cout << remVowel(str) << endl;
return 0;
}
|
Java
class Test
{
static String remVowel(String str)
{
return str.replaceAll( "[BCDFGHJKLMNPQRSTVXZbcdfghjklmnpqrstvxz]" , "" );
}
public static void main(String[] args)
{
String str = "GeeeksforGeeks - A Computer Science Portal for Geeks" ;
System.out.println(remVowel(str));
}
}
|
Python3
import re
str = 'GeeeksforGeeks - A Computer Science Portal for Geeks'
print (re.sub( '[BCDFGHJKLMNPQRSTVXZbcdfghjklmnpqrstvxz]' , '', str ))
|
C#
using System;
using System.Text.RegularExpressions;
class GFG
{
static String remVowel(String str)
{
return Regex.Replace(str, "[BCDFGHJKLMNPQRSTVXZbcdfghjklmnpqrstvxz]" , "" );
}
public static void Main()
{
String str = "GeeeksforGeeks - A Computer Science Portal for Geeks" ;
Console.WriteLine(remVowel(str));
}
}
|
Javascript
<script>
function remVowel(str)
{
return str.replace( new RegExp( "[BCDFGHJKLMNPQRSTVXZbcdfghjklmnpqrstvxz]" , 'g' ), "" );
}
let str = "GeeeksforGeeks - A Computer Science Portal for Geeks" ;
document.write(remVowel(str));
</script>
|
Output
eeeoee - A oue iee oa o ee
Time complexity : O(n) where n is the length of string
Auxiliary Space: O(1)
Like Article
Suggest improvement
Share your thoughts in the comments
Please Login to comment...