正则表达式 $1 $2代表什么?

$1,$2是表示的匹配的小括号里的内容

$1是匹配的第一个小括号里的 ,$2是匹配的第2个小括号里的

// 将yyyy-mm-dd格式转换为年月日格式
 function chDate1date(str){
    var reg =/(\d{4})\-(\d{2})\-(\d{2})/;
    return str.replace(reg,"$1年$2月$3日")
 };
chDate1date('2019-08-28')

// $1指2019

// $2指08

// $3指28
const path = "a[0].b.c"
const paths = path
        .replace(/\[(\w+)\]/g, ".$1")
        .replace(/\["(\w+)"\]/g, ".$1")
        .replace(/\['(\w+)'\]/g, ".$1")
        .split(".");

// 其中 $1 指的是 匹配的 \w+  即 这里的 0 
// replace函数的第二个参数其他几个特殊字符串
path.replace(reg,"$&")
'a[0].b.c' // 匹配到的整个字符串
path.replace(reg,"$`") // 匹配到的字符串的左边字符串
'aa.b.c'
path.replace(reg,"$'") // 匹配到的字符串的右边字符串

在线测试地址:https://tool.oschina.net/regex/

参考文章:https://blog.csdn.net/qq_37899792/article/details/100126765

https://www.runoob.com/jsref/jsref-replace.html

posted @ 2022-08-22 18:09  蓓蕾心晴  阅读(1069)  评论(0编辑  收藏  举报