In this article, we are going to learn about replacing specific words with another word in a string using regular expressions. Replacing specific words with another word in a string using regular expressions in JavaScript means searching for all occurrences of a particular word or pattern within the text and substituting them with a different word or phrase, considering possible variations and multiple instances.
There are several methods that can be used to replace specific words with another word in a string using regular expressions in JavaScript, which are listed below:
- Using String.replace()
- String.split() and Array.join() methods
We will explore all the above methods along with their basic implementation with the help of examples.
Approach 1: Using String.replace()
In this approach, we are Using String.replace() with a regular expression allows you to find and replace specific words or patterns within a string efficiently, enabling global replacements for all occurrences of the target.
Syntax:
function replaceWord(val1, val2, val3) {
let regex = new RegExp(val2, 'g');
return val1.replace(regex, val3);
};
Example: In this example, The replaceWord function uses a regular expression to replace all occurrences of ‘gfg’ with ‘GeeksforGeeks’ in the input text, demonstrating word replacement.
function replaceWord(val1, val2, val3) {
let regex = new RegExp(val2, 'g' );
return val1.replace(regex, val3);
} let inputText = "gfg is a computer science portal." ;
let result = replaceWord(inputText, 'gfg' , 'GeeksforGeeks' );
console.log(result); |
GeeksforGeeks is a computer science portal.
Approach 2: String.split() and Array.join() methods
In this approach, Using String.split() to split a string into words, mapping and replacing specific words, and finally using Array.join() to rejoin the modified words into a new string efficiently.
Syntax:
let words = str1.split(/\s+|\W+/);
Example: In this example, we split the string into words while removing punctuation, compare each word case-insensitively, and replace occurrences of ‘gfg’ with ‘GeeksforGeeks’, then rejoin the modified words.
let str1 = "gfg, a Computer science Portal." ;
let word1 = 'gfg' ;
let changeWord = 'GeeksforGeeks' ;
// Split the string into words and remove punctuation let words = str1.split(/\s+|\W+/); let replacedWords = words.map((word) => (word.toLowerCase() === word1.toLowerCase()
? changeWord : word));
let result = replacedWords.join( ' ' );
console.log(result); |
GeeksforGeeks a Computer science Portal