其他分享
首页 > 其他分享> > RegExp实例属性

RegExp实例属性

作者:互联网

每个 RegExp 实例都有下列属性,提供有关模式的各方面信息。
 global :布尔值,表示是否设置了 g 标记。
 ignoreCase :布尔值,表示是否设置了 i 标记。
 unicode :布尔值,表示是否设置了 u 标记。
 sticky :布尔值,表示是否设置了 y 标记。
 lastIndex :整数,表示在源字符串中下一次搜索的开始位置,始终从 0 开始。
 multiline :布尔值,表示是否设置了 m 标记。
 dotAll :布尔值,表示是否设置了 s 标记。
 source :正则表达式的字面量字符串(不是传给构造函数的模式字符串),没有开头和结尾的
斜杠。
 flags :正则表达式的标记字符串。始终以字面量而非传入构造函数的字符串模式形式返回(没
有前后斜杠)。
通过这些属性可以全面了解正则表达式的信息,不过实际开发中用得并不多,因为模式声明中包含
这些信息。下面是一个例子:
let pattern1 = /\[bc\]at/i; console.log(pattern1.global); // false console.log(pattern1.ignoreCase); // true console.log(pattern1.multiline); // false console.log(pattern1.lastIndex); // 0 console.log(pattern1.source); // "\[bc\]at" console.log(pattern1.flags); // "i" let pattern2 = new RegExp("\\[bc\\]at", "i"); console.log(pattern2.global); // false console.log(pattern2.ignoreCase); // true console.log(pattern2.multiline); // false console.log(pattern2.lastIndex); // 0 console.log(pattern2.source); // "\[bc\]at" console.log(pattern2.flags); // "i"
注意,虽然第一个模式是通过字面量创建的,第二个模式是通过RegExp构造函数创建的,但两个模式的source和flags属性是相同的。source和flags属性返回的是规范化之后可以在字面量中使用的形式。

标签:console,log,布尔值,pattern1,pattern2,source,实例,RegExp,属性
来源: https://www.cnblogs.com/caesar-null/p/15411346.html