Move all special char to the end of the String

In this article, we will learn how to move all special char to the end of the String.

Examples:

Input : !@$%^&*AJAY
Output :AJAY!@$%^&*

Input :Geeksf!@orgeek@s A#$ c%o^mputer s****cience p#o@rtal fo@r ge%eks
Output :Geeksforgeeks A computer science portal for geeks!@@#$%^****#@@%



Prerequisite : Regular Expressions in Java

The idea is to traverse input string and maintain two strings, one string that contains normal characters (a, A, 1, ‘ ‘, etc) and other string that maintains special characters (@, $, etc). Finally, concatenate the two strings and return.

Here is the implementation of above approach

Java

filter_none

edit
close

play_arrow

link
brightness_4
code

// Java program move all special char to the end of the string
class GFG1 {
  
    // Function return a string with all special 
    // chars to the end
    static String moveAllSC(String str)
    {
        // Take length of string
        int len = str.length();
  
        // regular expression for check char is special
        // or not.
        String regx = "[a-zA-Z0-9\\s+]";
  
        // traverse string
        String res1 = "", res2 = "";
        for (int i = 0; i < len; i++) {
          
            char c = str.charAt(i);
  
            // check char at index i is a special char
            if (String.valueOf(c).matches(regx)) 
               res1 = res1 + c;
            else
               res2 = res2 + c;
        }
        return res1 + res2;
    }
  
    public static void main(String args[])
    {
        String str = "Geeksf!@orgeek@s A#$ c%o^mputer"
                     + " s****cience p#o@rtal fo@r ge%eks";
        System.out.println(moveAllSC(str));
    }
}

chevron_right


Python3

# Python3 program move all special char
# to the end of the string

# Function return a string with all
# special chars to the end
def moveAllSC(string):

# Take length of string
length = len(string)

# Traverse string
res1, res2 = “”, “”
for i in range(0, length):

c = string[i]

# check char at index i is a special char
if c.isalnum() or c == ” “:
res1 = res1 + c
else:
res2 = res2 + c

return res1 + res2

# Driver Code
if __name__ == “__main__”:

string = “Geeksf!@orgeek@s A#$ c%o^mputer” \
+” s****cience p#o@rtal fo@r ge%eks”

print(moveAllSC(string))

# This code is contributed by Rituraj Jain

Output:

Geeksforgeeks A computer science portal for geeks!@@#$%^****#@@%


My Personal Notes arrow_drop_up

Just another competitive programmer and hard worker

If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to contribute@geeksforgeeks.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.

Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.



Improved By : rituraj_jain