Skip to content
Related Articles

Related Articles

Remove all occurrences of a character in a string

View Discussion
Improve Article
Save Article
  • Difficulty Level : Easy
  • Last Updated : 30 Aug, 2022
View Discussion
Improve Article
Save Article

Given a string. Write a program to remove all the occurrences of a character in the string.

Examples: 

Input : s = "geeksforgeeks"
        c = 'e'
Output : s = "gksforgks"

Input : s = "geeksforgeeks"
        c = 'g'
Output : s = "eeksforeeks"

First Approach: The idea is to maintain an index of the resultant string.  

Implementation:

C++




// C++ program to remove a particular character
// from a string.
#include <bits/stdc++.h>
using namespace std;
 
void removeChar(char* s, char c)
{
 
    int j, n = strlen(s);
    for (int i = j = 0; i < n; i++)
        if (s[i] != c)
            s[j++] = s[i];
 
    s[j] = '\0';
}
 
int main()
{
    char s[] = "geeksforgeeks";
    removeChar(s, 'g');
    cout << s;
    return 0;
}

Java




// Java program to remove
// a particular character
// from a string.
class GFG
{
static void removeChar(String s, char c)
{
    int j, count = 0, n = s.length();
    char []t = s.toCharArray();
    for (int i = j = 0; i < n; i++)
    {
        if (t[i] != c)
        t[j++] = t[i];
        else
            count++;
    }
     
    while(count > 0)
    {
        t[j++] = '\0';
        count--;
    }
     
    System.out.println(t);
}
 
// Driver Code
public static void main(String[] args)
{
    String s = "geeksforgeeks";
    removeChar(s, 'g');
}
}
 
// This code is contributed
// by ChitraNayal

Python3




# Python3 program to remove
# a particular character
# from a string.
 
# function for removing the
# occurrence of character
def removeChar(s, c) :
     
    # find total no. of
    # occurrence of character
    counts = s.count(c)
 
    # convert into list
    # of characters
    s = list(s)
 
    # keep looping until
    # counts become 0
    while counts :
         
        # remove character
        # from the list
        s.remove(c)
 
        # decremented by one
        counts -= 1
 
    # join all remaining characters
    # of the list with empty string
    s = '' . join(s)
     
    print(s)
 
# Driver code
if __name__ == '__main__' :
     
    s = "geeksforgeeks"
    removeChar(s,'g')
     
# This code is contributed
# by Ankit Rai

C#




// C# program to remove a
// particular character
// from a string.
using System;
 
class GFG
{
static void removeChar(string s,
                       char c)
{
    int j, count = 0, n = s.Length;
    char[] t = s.ToCharArray();
    for (int i = j = 0; i < n; i++)
    {
        if (s[i] != c)
        t[j++] = s[i];
        else
            count++;
    }
     
    while(count > 0)
    {
        t[j++] = '\0';
        count--;
    }
     
    Console.Write(t);
}
 
// Driver Code
public static void Main()
{
    string s = "geeksforgeeks";
    removeChar(s, 'g');
}
}
 
// This code is contributed
// by ChitraNayal

PHP




<?php
// PHP program to remove a
// particular character
// from a string.
 
function removeChar($s, $c)
{
 
    $n = strlen($s);
    $count = 0;
    for ($i = $j = 0; $i < $n; $i++)
    {
    if ($s[$i] != $c)
        $s[$j++] = $s[$i];
    else
        $count++;
    }
    while($count--)
    {
        $s[$j++] = NULL;
    }
    echo $s;
}
 
// Driver code
$s = "geeksforgeeks";
removeChar($s, 'g');
 
// This code is contributed
// by ChitraNayal
?>

Javascript




<script>
 
// Javascript program to remove
// a particular character
// from a string.
function removeChar(s, c)
{
    let j, count = 0, n = s.length;
    let t = s.split("");
     
    for(let i = j = 0; i < n; i++)
    {
        if (t[i] != c)
            t[j++] = t[i];
        else
            count++;
    }
      
    while (count > 0)
    {
        t[j++] = '\0';
        count--;
    }
    document.write(t.join(""));
}
 
// Driver Code
let s = "geeksforgeeks";
removeChar(s, 'g');
 
// This code is contributed by avanitrachhadiya2155
 
</script>

Output

eeksforeeks

Complexity Analysis:

  • Time Complexity : O(n) where n is length of input string. 
  • Auxiliary Space : O(1)

Second Approach in C++:  We can also use the STL string class and erase function to delete any character at any position using the base addressing (string.begin()).

Implementation:

C++14




#include <bits/stdc++.h>
using namespace std;
 
string removechar(string& word,char& ch)
{
    for(int i=0;i<word.length();i++)
    {
        if(word[i]==ch){
        word.erase(word.begin()+i);
        i--;
        }
    }
     
    return word;
}
 
 
// driver's code
int main()
{
    string word="geeksforgeeks";
    char ch='e';
    cout<<removechar(word,ch);
 
    return 0;
}

Output

gksforgks

Complexity Analysis:

  • Time Complexity: O(n), where n is length of input string. 
  • Auxiliary Space: O(1).

My Personal Notes arrow_drop_up
Recommended Articles
Page :

Start Your Coding Journey Now!