DEV Community

Cover image for JavaScript `string.replace()` useful cases
Muhammad A Faishal
Muhammad A Faishal

Posted on • Edited on

4 2 2 2 2

JavaScript `string.replace()` useful cases

1. Simple String Replacement

Replace the first occurrence of a substring.

let str = "Hello world!";
let result = str.replace("world", "JavaScript");

// Output: "Hello JavaScript!"
Enter fullscreen mode Exit fullscreen mode

2. Global String Replacement

Replace all occurrences of a substring, use the global (g) flag with regular expression.

let str = "Hello world, world!";
let result = str.replace(/world/g, "JavaScript");

// Output: "Hello JavaScript, JavaScript!"

Enter fullscreen mode Exit fullscreen mode

3. Case-insensitive Replacement

You can make the replacement case-insensitive using the i flag.

let str = "Hello World, World!";
let result = str.replace(/world/gi, "JavaScript")

// Output: "Hello JavaScript, JavaScript!"
Enter fullscreen mode Exit fullscreen mode

4. Replace Whole Words (Word Boundary)

Replace only whole words using \b word boundary.

let str = "This is a test word, test.";
let result = str.replace(/\btest\b/, "success");

// Output: "This is a success word, test."
Enter fullscreen mode Exit fullscreen mode

Replace all occurrences of the whole word, use the global flag.

let str = "This is a test word, test.";
let result = str.replace(/\btest\b/g, "success");

// Output: "This is a success word, success."
Enter fullscreen mode Exit fullscreen mode

5. Using a Function for Replacement

You can pass a function to replace() that dynamically generates the replacement string.

let str = "The price is $10";
let result = str.replace(/\$\d+/g, (match) => {
   return `$${parseInt(match.substring(1)) * 2}`
});

// Output: "The price is $20"
Enter fullscreen mode Exit fullscreen mode

6. Capturing Groups with Replacement

Using regular expressions, you can capture parts of the match and reuse them in the replacement string.

let str = "John Smith";
let result = str.replace(/(\w+)\s(\w+)/, "$2, $1");

// Output: "Smith, John"
Enter fullscreen mode Exit fullscreen mode

7. Escaping Special Characters

If you need to replace special characters like . or *, you need to escape them in the regular expression.

let str = "Price: 5.99";
let result = str.replace(/\./, ",");

// Output: "Price: 5,99"
Enter fullscreen mode Exit fullscreen mode

8. Replacing Non-ASCII Characters

To replace characters that aren't in the ASCII range, you can use Unicode properties.

let str = "Héllo Wörld";
let result = str.replace(/[^\x00-\x7F]/g, "");

// Output: "Hllo Wrld"
Enter fullscreen mode Exit fullscreen mode

9. Replacing Digits

You can replace digits (or groups of digits) using regular expressions.

let str = "Contact: 123-456-7890";
let result = str.replace(/\d{3}/g, "***");

// Output: "Contact: ***-***-***0"
Enter fullscreen mode Exit fullscreen mode

10. Replacing Special Characters using Unicode

You can also use Unicode escape sequences to replace special characters.

let str = "I love ☕!";
let result = str.replace(/\u2615/g, "coffee"); 

// Output: "I love coffee!"
Enter fullscreen mode Exit fullscreen mode

11. Replace Words using Lookbehind and Lookahead assertion

Replace only whole words while preserving the surrounding whitespace.

let str = "This is a test word, test.";
let result = str.replace(/(?<=\s|^)test(?=\s|$)/, "success");

// Output: "This is a success word, test."
Enter fullscreen mode Exit fullscreen mode

Replace all occurrences of the whole word, use the global flag.

let str = "This is a test word, test.";
let result = str.replace(/(?<=\s|^)test(?=\s|$)/g, "success");

// Output: "This is a success word, test."
Enter fullscreen mode Exit fullscreen mode

Top comments (0)

AWS Security LIVE!

Join us for AWS Security LIVE!

Discover the future of cloud security. Tune in live for trends, tips, and solutions from AWS and AWS Partners.

Learn More

👋 Kindness is contagious

Please leave a ❤️ or a friendly comment on this post if you found it helpful!

Okay