Split numeric, alphabetic and special symbols from a String - GeeksforGeeks

16 Jun, 2021
Given string str, divide the string into three parts one containing a numeric part, one containing alphabetic, and one containing special characters. 
Examples: 
Input : geeks01for02geeks03!!!
Output :geeksforgeeks
        010203
        !!!
Here str = "Geeks01for02Geeks03!!!", we scan every character and 
append in res1, res2 and res3 string accordingly.

Input : **Docoding123456789everyday##
Output :Docodingeveryday
        123456789
        **##
Steps : 
Calculate the length of the string.Scan every character(ch) of a string one by oneif (ch is a digit) then append it in res1 string.else if (ch is alphabet) append in string res2.else append in string res3.Print all the strings, we will have one string containing a numeric part, other non-numeric part, and the last one contains special characters.
Calculate the length of the string.
Scan every character(ch) of a string one by oneif (ch is a digit) then append it in res1 string.else if (ch is alphabet) append in string res2.else append in string res3.
if (ch is a digit) then append it in res1 string.
else if (ch is alphabet) append in string res2.
else append in string res3.
Print all the strings, we will have one string containing a numeric part, other non-numeric part, and the last one contains special characters.
C++
Java
Python3
C#
Javascript
// CPP program to split an alphanumeric// string using STL#include<bits/stdc++.h>using namespace std; void splitString(string str){    string alpha, num, special;    for (int i=0; i<str.length(); i++)    {        if (isdigit(str[i]))            num.push_back(str[i]);        else if((str[i] >= 'A' && str[i] <= 'Z') ||                (str[i] >= 'a' && str[i] <= 'z'))            alpha.push_back(str[i]);        else            special.push_back(str[i]);    }     cout << alpha << endl;    cout << num << endl;    cout << special << endl;} // Driver codeint main(){    string str = "geeks01$$for02geeks03!@!!";    splitString(str);    return 0;}
// java program to split an alphanumeric// string using stringbuffer class Test{    static void splitString(String str)    {        StringBuffer alpha = new StringBuffer(),        num = new StringBuffer(), special = new StringBuffer();                 for (int i=0; i<str.length(); i++)        {            if (Character.isDigit(str.charAt(i)))                num.append(str.charAt(i));            else if(Character.isAlphabetic(str.charAt(i)))                alpha.append(str.charAt(i));            else                special.append(str.charAt(i));        }              System.out.println(alpha);        System.out.println(num);        System.out.println(special);    }         // Driver method    public static void main(String args[])    {        String str = "geeks01$$for02geeks03!@!!";        splitString(str);    }}
# Python 3 program to split an alphanumeric# string using STLdef splitString(str):     alpha = ""    num = ""    special = ""    for i in range(len(str)):        if (str[i].isdigit()):            num = num+ str[i]        elif((str[i] >= 'A' and str[i] <= 'Z') or             (str[i] >= 'a' and str[i] <= 'z')):            alpha += str[i]        else:            special += str[i]     print(alpha)    print(num )    print(special) # Driver codeif __name__ == "__main__":         str = "geeks01$$for02geeks03!@!!"    splitString(str) # This code is contributed by ita_c
// C# program to split an alphanumeric// string using stringbufferusing System;using System.Text; class GFG  {         // Function ot split string    static void splitString(string str)    {        StringBuilder alpha =                 new StringBuilder();        StringBuilder num =                 new StringBuilder();        StringBuilder special =                 new StringBuilder();             for (int i = 0; i < str.Length; i++)        {            if (Char.IsDigit(str[i]))                num.Append(str[i]);            else if((str[i] >= 'A' &&                     str[i] <= 'Z') ||                     (str[i] >= 'a' &&                      str[i] <= 'z'))                alpha.Append(str[i]);            else                special.Append(str[i]);        }             Console.WriteLine(alpha);        Console.WriteLine(num);        Console.WriteLine(special);    }         // Driver code    public static void Main()    {        string str = "geeks01$$for02geeks03!@!!";        splitString(str);    }} // This code is contributed by Sam007
<script>// Javascript program to split an alphanumeric// string using stringbuffer            function splitString(str)    {        let alpha = "";        let num = "";        let special = "";        for (let i=0; i<str.length; i++)        {            if (!isNaN(String(str[i]) * 1))                num+=str[i];            else if((str[i] >= 'A' && str[i] <= 'Z') ||             (str[i] >= 'a' && str[i] <= 'z'))                alpha+=str[i];            else                special+=str[i];        }                document.write(alpha+"<br>");        document.write(num+"<br>");        document.write(special+"<br>");    }         // Driver method    let str = "geeks01$$for02geeks03!@!!";    splitString(str);         // This code is contributed by avanitrachhadiya2155</script>
Output: 
geeksforgeeks
010203
$$!@!!
The time complexity of the above solution is O(n) where n is the length of the string. 
Sam007
ukasp
Akanksha_Rai
avanitrachhadiya2155
bunnyram19
C++
School Programming
Strings
Strings
CPP
Writing code in comment?
Please use ide.geeksforgeeks.org,
generate link and share the link here.
Comments
Old Comments
Constructors in C++
Socket Programming in C/C++
Operator Overloading in C++
Multidimensional Arrays in C / C++
Copy Constructor in C++
Python Dictionary
Reverse a string in Java
Constructors in C++
Interfaces in Java
Operator Overloading in C++