RegExp.prototype.source

基线 广泛可用

此功能已得到良好建立,并且可在许多设备和浏览器版本上运行。它自以下时间起在所有浏览器中都可用 2015 年 7 月.

sourceRegExp 实例的访问器属性,它返回一个字符串,其中包含此正则表达式的源文本,但不包括两侧的两个正斜杠或任何标志。

试一试

描述

从概念上讲,source 属性是正则表达式文字中两个正斜杠之间的文本。语言要求返回的字符串正确转义,以便当 source 在两端与正斜杠连接时,它将形成一个可解析的正则表达式文字。例如,对于 new RegExp("/")source\\/,因为如果它生成 /,则结果文字将变为 ///,这是一个行注释。类似地,所有 行终止符 都将被转义,因为行终止符字符将破坏正则表达式文字。对于其他字符,只要结果可解析,就没有要求。对于空正则表达式,将返回字符串 (?:)

示例

使用 source

js
const regex = /fooBar/gi;

console.log(regex.source); // "fooBar", doesn't contain /.../ and "gi".

空正则表达式和转义

js
new RegExp().source; // "(?:)"

new RegExp("\n").source === "\\n"; // true, starting with ES5

规范

规范
ECMAScript 语言规范
# sec-get-regexp.prototype.source

浏览器兼容性

BCD 表格仅在启用 JavaScript 的浏览器中加载。

另请参阅