Non-standard
This feature is non-standard and is not on a standards track. Do not use it on production sites facing the Web: it will not work for every user. There may also be large incompatibilities between implementations and the behavior may change in the future.
The non-standard leftContext property is a static and read-only property of regular expressions that contains the substring preceding the most recent match. RegExp.$` is an alias for this property.
Description
The leftContext property is static, it is not a property of an individual regular expression object. Instead, you always use it as RegExp.leftContext or RegExp['$`'].
The value of the leftContext property is read-only and modified whenever a successful match is made.
You can not use the shorthand alias with the dot property accessor (RegExp.$`), because the parser expects a starting template string in that case and a SyntaxError is thrown. Use the bracket notation for property access.
Examples
Using leftContext and $`
var re = /world/g;
re.test('hello world!');
RegExp.leftContext; // "hello "
RegExp['$`']; // "hello "
Specifications
| Specification |
|---|
| Legacy RegExp features in JavaScript |
Browser compatibility
| Desktop | Mobile | Server | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
RegExp.leftContext ($`) | Chrome Full support 1 | Edge Full support 12 | Firefox Full support 1 | IE Full support 5.5 | Opera Full support 8 | Safari Full support 3 | WebView Android Full support 1 | Chrome Android Full support 18 | Firefox Android Full support 4 | Opera Android Full support 10.1 | Safari iOS Full support 1 | Samsung Internet Android Full support 1.0 | nodejs Full support Yes |
Legend
- Full support
- Full support
- Non-standard. Expect poor cross-browser support.
- Non-standard. Expect poor cross-browser support.
