RegExp.prototype.compile()
Deprecated
Avoid using this feature in new projects.
The compile() method duplicates behavior of the RegExp() constructor and it exists only for backwards compatibility.
This feature may be a candidate for removal from web standards or browsers.>
Note:
The compile() method is only specified for compatibility reasons. Using compile() causes the otherwise immutable regex source and flags to become mutable, which may break user expectations. You can use the RegExp() constructor to construct a new regular expression object instead.
The compile() method of RegExp instances is used to recompile a regular expression with new source and flags after the RegExp object has already been created.
Syntax
compile(pattern, flags)
Parameters
pattern-
The text of the regular expression.
flags-
Any combination of flag values.
Return value
None (undefined).
Exceptions
TypeError-
Thrown if the
thisvalue is not an instance of the current realm'sRegExpconstructor. This includes a subclass ofRegExpand theRegExpconstructor from a different realm.
Examples
>Using compile()
The following example shows how to recompile a regular expression with a new pattern and a new flag.
const regexObj = /foo/gi;
regexObj.compile("new foo", "g");
Specifications
| Specification |
|---|
| ECMAScript® 2027 Language Specification> # sec-regexp.prototype.compile> |