Last Updated : 23 Jul, 2025
In JavaScript, global regular expressions (RegExp objects with the g flag) are used to perform operations across the entire input string rather than stopping after the first match.
To understand how the g
flag works, here’s a simple example
let s = "apple banana cherry";
// Match one or more word characters globally
let regex = /\w+/g;
// Returns all matches as an array
let matches = s.match(regex);
console.log(matches);
[ 'apple', 'banana', 'cherry' ]
Syntax
const regex = /pattern/g;Key Features of Global RegExp
With the g flag, replace can substitute all instances of a pattern.
Remove All Spaces
JavaScript
let s1 = "Hello World! JavaScript is fun.";
let s2 = s1.replace(/\s+/g, "");
console.log(s2);
HelloWorld!JavaScriptisfun.
Replace All Instances of a Word
JavaScript
let s1 = "JavaScript is great. JavaScript is versatile.";
let s2 = s1.replace(/JavaScript/g, "JS");
console.log(s2);
JS is great. JS is versatile.2. Iterative Pattern Matching with exec
The exec method allows you to loop through matches one by one when using the g flag.
Extract All Email Addresses
JavaScript
let s = "user1@example.com, user2@test.org, user3@domain.net";
let regex = /\b\w+@\w+\.\w+\b/g;
let match;
while ((match = regex.exec(s)) !== null) {
console.log(`Found: ${match[0]}`);
}
Found: user1@example.com Found: user2@test.org Found: user3@domain.net3. Global Search with Dynamic Patterns
The g flag allows dynamic pattern matching for variable inputs.
JavaScript
let s1 = "JavaScript is powerful and JavaScript is flexible.";
let key = "JavaScript";
let regex = new RegExp(key, "g");
let s2 = s1.replace(regex, "**JavaScript**");
console.log(s2);
**JavaScript** is powerful and **JavaScript** is flexible.4. Log Analysis
Extract error messages or IP addresses from server logs.
JavaScript
let logs = "Error at 10.0.0.1\nSuccess at 192.168.0.1\nError at 172.16.0.1";
let regex = /\b\d{1,3}(\.\d{1,3}){3}\b/g;
console.log(logs.match(regex));
[ '10.0.0.1', '192.168.0.1', '172.16.0.1' ]5. File Parsing
Extract all URLs from text or documents.
JavaScript
let s = "Check out https://example.com/ and http://test.org for more info.";
let regex = /(https?:\/\/[^\s]+)/g;
console.log(s.match(regex));
[ 'https://example.com/', 'http://test.org' ]6. Text Cleaning
Remove unwanted characters or standardize formatting in strings.
Remove Special Characters
JavaScript
let s1 = "Hello! @World# $2024";
let s2 = s1.replace(/[!@#$]/g, "");
console.log(s2);
Standardize Line Breaks
JavaScript
let s1 = "Line1\r\nLine2\nLine3\r";
let s2 = s1.replace(/\r\n|\r|\n/g, "\n");
console.log(s2);
How Global RegExp Enhances Productivity
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4