()的含义,看了几篇文章,感觉没看到位,可能是我理解上有问题
比如下面
() 小括号在正则中代表分组,一般在 match 方法中用来返回全匹配加上多个分组结果
const str='regex148';
var result=str.match(/.*(ex)(.*)/);
实在没理解,这里说的“全匹配” 和“多个分组” ,具体是怎么划分的
()的含义,看了几篇文章,感觉没看到位,可能是我理解上有问题
比如下面
() 小括号在正则中代表分组,一般在 match 方法中用来返回全匹配加上多个分组结果
const str='regex148';
var result=str.match(/.*(ex)(.*)/);
实在没理解,这里说的“全匹配” 和“多个分组” ,具体是怎么划分的
结果:["gex1", "ex", "1", index: 2, input: "regex148", groups: undefined]
索引0
:gex1
全匹配。为//之间整个内容
索引1
:ex
第一个小括号
的内匹配结果
索引2
:1
第二个小括号
的匹配结果第一个值表示全匹配,后面的每一个
依次
表示小括号的结果。
与replace
一样
你也许见过'xxxxxx'.replace(/(a)(b)(c)/g, (g, $1, $2, $3))
`var str = "2019-5-1";
//改成2019年05月01日
var add0 = num=>num<10?num:"0"+num;
var result = str.replace(/(d+)-(d+)-(d+)/,$1年${add0('$2')}月${add0('$3')}日
)
console.log(result);//2019年05月01日`
1.组的概念 一般与$搭配使用
2.优先级的作用
按照下面的优先级执行 当与其他元字符发生冲突时候 用这个
10 回答11.2k 阅读
5 回答4.9k 阅读✓ 已解决
4 回答3.1k 阅读✓ 已解决
2 回答2.8k 阅读✓ 已解决
3 回答2.4k 阅读✓ 已解决
3 回答2.2k 阅读✓ 已解决
2 回答2.6k 阅读✓ 已解决
准确来说()可用来分组,但并不说明代表分组。你需要的是这个js正则分组 https://developer.mozilla.org...