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+)/;