Non-alphanumeric characters can be remove by using preg_replace() function. This function perform regular expression search and replace. The function preg_replace() searches for string specified by pattern and replaces pattern with replacement if found.
Examples:
Input : !@neveropen2018? Output : neveropen2018 Input : Geeks For Geeks Output : GeeksForGeeks
Syntax:
int preg_match( $pattern, $replacement_string, $original_string )
Parameter: This function accepts three parameter as mentioned above and described below:
- $pattern: The pattern that is searched in the string. It must be a regular expression.
- $replacement_string: The matched pattern is replaced by the replacement_string.
- $original_string: It is the original string in which searching and replacement is done.
Return value:
- After the replacement has occurred, the modified string will be returned.
- If no matches are found, the original string remains unchanged.
Method 1: The regular expression ‘/[\W]/’ matches all the non-alphanumeric characters and replace them with ‘ ‘ (empty string).
$str = preg_replace( '/[\W]/', '', $str);
In the regular expression W is a meta-character that is preceded by a backslash (\W) that acts to give the combination a special meaning. It means a combination of non-alphanumeric characters.
Example:
<?php // string containing non-alphanumeric characters $str = "!@neveropen2018?" ; // preg_replace function to remove the // non-alphanumeric characters $str = preg_replace( '/[\W]/' , '' , $str ); // print the string echo ( $str ); ?> |
neveropen2018
Method 2: The regular expression ‘/[^a-z0-9 ]/i’ matches all the non-alphanumeric characters and replace them with ‘ ‘ (null string).
$str = preg_replace( '/[^a-z0-9 ]/i', '', $str);
In the regular expression:
- i: It is used for case insensitive.
- a-z: It is used for all lowercase letters, don’t need to specify A-Z because of i (case insensitive) already mentioned in the statement.
- 0-9: It is used to match all digits.
Example:
<?php // string containing non-alphanumeric characters $str = "!@neveropen2018?" ; // preg_replace function to remove the // non-alphanumeric characters $str = preg_replace( '/[^a-z0-9]/i' , '' , $str ); // print the string echo ( $str ); ?> |
neveropen2018