Split numeric, alphabetic and special symbols from a String
Given string str, divide the string into three parts one containing a numeric part, one containing alphabetic, and one containing special characters.
Examples:
Input : Beginner01for02Beginner03!!! Output :w3wiki 010203 !!! Here str = "Beginner01for02Beginner03!!!", 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 one
- 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.
Implementation:
C++
// 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 code int main() { string str = "Beginner01$$for02Beginner03!@!!" ; splitString(str); return 0; } |
Java
// 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 = "Beginner01$$for02Beginner03!@!!" ; splitString(str); } } |
Python3
# Python 3 program to split an alphanumeric # string using STL def 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 code if __name__ = = "__main__" : str = "Beginner01$$for02Beginner03!@!!" splitString( str ) # This code is contributed by ita_c |
C#
// C# program to split an alphanumeric // string using stringbuffer using 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 = "Beginner01$$for02Beginner03!@!!" ; splitString(str); } } // This code is contributed by Sam007 |
Javascript
<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 = "Beginner01$$for02Beginner03!@!!" ; splitString(str); // This code is contributed by avanitrachhadiya2155 </script> |
Output
w3wiki 010203 $$!@!!
The time complexity of the above solution is O(n) where n is the length of the string.
Auxiliary Space: O(n), where n is the length of string.