RegExp.prototype.compile()
Deprecated: This feature is no longer recommended. Though some browsers might still support it, it may have already been removed from the relevant web standards, may be in the process of being dropped, or may only be kept for compatibility purposes. Avoid using it, and update existing code if possible; see thecompatibility table at the bottom of this page to guide your decision. Be aware that this feature may cease to work at any time.
Note:Thecompile() method is only specified for compatibility reasons. Usingcompile() causes the otherwise immutable regex source and flags to become mutable, which may break user expectations. You can use theRegExp() constructor to construct a new regular expression object instead.
Thecompile() method ofRegExp instances is used to recompile a regular expression with new source and flags after theRegExp object has already been created.
In this article
Syntax
compile(pattern, flags)Parameters
patternThe text of the regular expression.
flagsAny combination offlag values.
Return value
None (undefined).
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® 2026 Language Specification> # sec-regexp.prototype.compile> |