RegExp.$1的用法
2023-02-09 本文已影响0人
团猫咪爱吃玉米
RegExp
是javascript中的一个内置对象。为正则表达式。
RegExp.$1
是RegExp的一个属性,指的是与正则表达式匹配的第一个子匹配(以括号为标志)字符串,以此类推,RegExp.$2
,RegExp.$3
,...RegExp.$99
总共可以有99个匹配
如果你直接在控制台打印RegExp
, 出现的一定是一个空字符串: ""。那么, 我们在什么时候可以使用RegExp.$1
呢?
其实RegExp
这个对象会在我们调用了正则表达式的方法后, 自动将最近一次的结果保存在里面, 所以如果我们在使用正则表达式时, 有用到分组, 那么就可以直接在调用完以后直接使用RegExp.$xx
来使用捕获到的分组内容, 如下:
const r = /\[@userId:(\S*)\|userName:(\S*)\]/
r.exec("[@userId:xmimg9.liu|userName:小明]")
console.log(RegExp.$1); //xmimg9.liu
console.log(RegExp.$2); //小明
$n
在 String.replace
中的应用:
var re = /(\w+)\s(\w+)/;
var str = 'Hello world';
str.replace(re, '$2, $1'); // "world, Hello"
RegExp.$1; // Hello
RegExp.$2; // world