美文网首页让前端飞JavaScript正则表达式
JavaScript正则表达式——分组

JavaScript正则表达式——分组

作者: 椰果粒 | 来源:发表于2018-08-01 19:05 被阅读10次

可以将正则表达式用()分组
():可以记录你匹配到的内容
\1:表示反向引用,引用第一个子表达式的内容
\2:表示第二个子表达式的内容了
\1\2\3等用在正则表达式中
$0:整个str
$1:匹配到的第一个子表达式内容
$2:匹配到的第二个子表达式的内容
$0$1$2用在replace的第二个参数中

举个🌰

// ()可以记住你已经匹配到的东西,\1表示重复第一个分组里的内容,也就是aa形式的
var reg = /(\w)\1/g;     // ["aa", "bb", "cc", "dd", "dd"]
// 表示相同的匹配2次,也就是一共3次
var reg = /(\w)\1\1/g;    // ["ddd"]
// 相同字母出现次数大于等于2次的
var reg = /(\w)\1+/g;   // ["aa", "bb", "cc", "ddddd"]
// aabb样式的 
var reg = /(\w)\1(\w)\2/g;  //  ["aabb", "ccdd"]
var str = "aabbccdddddef";    
console.log(str.match(reg)); 
"123-mm".replace(/(\d+)-([A-Za-z]+)/g,"$2")   // "mm"
"123-mm".replace(/(\d+)-([A-Za-z]+)/g,"$1")   // "123"
$1-$9分组
这里的(\d+)表示第一个分组,对应$1
([a-zA-Z]+)表示第二个分组,对应$2

3. 反向引用
正则中的()表示一个分组,\1表示引用第一个分组一次,也就是和第一个分组内容相同才匹配

image.png

相关文章

  • 正则表达式

    javascript正则表达式正则表达式30分钟入门教程js的正则表达式的正则前瞻(?=)和非捕获性分组(?:)有...

  • JavaScript 正则表达式(3)

    在JavaScript正则表达式(2)中,我们一起学习了正则表达式的入门进阶功能,比如反向引用,分组匹配,环视,一...

  • 正则表达式括号的作用

    本文摘抄自javascript正则表达式迷你书 正则表达式是匹配模式,要么匹配字符,要么匹配位置 1. 分组和分...

  • 正则表达式

    字符含意 直接量字符 字符类 复制 选择,分组和引用 指定匹配的位置 属性 javascript 正则表达式

  • JavaScript正则表达式——分组

    可以将正则表达式用()分组():可以记录你匹配到的内容\1:表示反向引用,引用第一个子表达式的内容\2:表示第二个...

  • 2019-05-07python学习记录-搜文本

    正则表达式 添加括号可以在正则表达式中加分组groups() 复数可以一次获得所有分组 | 用管道匹配多个分组? ...

  • 原生js的基础方法等二

    JavaScript 正则表达式 正则表达式模式 调试 this JSON 字符串转换为 JavaScript 对...

  • Django的路由系统

    基本格式 分组命名匹配 在Python的正则表达式中,分组命名正则表达式组的语法是(?Ppattern...

  • javascript正则表达式----分组捕获

    正则的分组捕获 简单的分组捕获之前在写身份证号正则(不完整)的时候,提到过分组捕获 分组多次捕获假设有这种需求: ...

  • day5-正则表达式学习(基于JavaScript)

    JavaScript正则表达式 什么是正则表达式

网友评论

    本文标题:JavaScript正则表达式——分组

    本文链接:https://www.haomeiwen.com/subject/rebrvftx.html