In this article, we will see how to replace special characters in a string with an underscore in JavaScript. JavaScript replace() method is used to replace all special characters from a string with _ (underscore) which is described below:
JavaScript replace() Method: This method searches a string for a defined value, or a regular expression, and returns a new string with the replaced defined value.
Syntax:
string.replace(searchVal, newvalue)
Parameters:
- searchVal: It is a required parameter. It specifies the value or regular expression, that is going to replace by the new value.
- newvalue: It is a required parameter. It specifies the value to replace the search value with.
Return value: It returns a new string that matches the pattern specified in the parameters.
Example 1: This example replaces all special characters with _ (underscore) using replace() method.
Javascript
let str = "This, is# GeeksForGeeks!" ;
console.log(str.replace(/[&\/\\ #, +()$~%.'":*?<>{}]/g, '_'));
|
Output
This__is__GeeksForGeeks!
Example 2: This example replaces a unique special character with _ (underscore). This example goes to each character and checks if it is a special character that we are looking for, then it will replace the character. In this example, the unique character is $(dollar sign).
Javascript
let str = "A$computer$science$portal$for$Geeks" ;
function gfg_Run() {
let newStr = "" ;
for (let i = 0; i < str.length; i++) {
if (str[i] == '$' ) {
newStr += '_' ;
}
else {
newStr += str[i];
}
}
console.log(newStr);
}
gfg_Run();
|
Output
A_computer_science_portal_for_Geeks
Example 3: In this example, we replace a unique special character with _ (underscore). This example spread function is used to form an array from a string and form a string with the help of reduce which excludes all special character and add underscore in their places. In this example the unique character are `&\/#, +()$~%.'”:*?<>{}`.
Javascript
let check = chr => `&\/ #, +()$~%.'":*?<>{}`.includes(chr);
let str = "This, is # GeeksForGeeks!";
let underscore_str = [...str]
.reduce((s, c) => check(c) ? s + '_ ' : s + c, ' ');
console.log(underscore_str);
|
Output
This__is__GeeksForGeeks!
Whether you're preparing for your first job interview or aiming to upskill in this ever-evolving tech landscape,
GeeksforGeeks Courses are your key to success. We provide top-quality content at affordable prices, all geared towards accelerating your growth in a time-bound manner. Join the millions we've already empowered, and we're here to do the same for you. Don't miss out -
check it out now!