正则 捕获组之反向引用

之前写正则的时候,经常用到 (.*?) 之类的用法.一般在替换的时候会用 $1 来引用括号里面匹配到的内容
比如,

1.1.1.1 aaaa
2.2.2.2 bbbb
3.3.2.3 ccca

我们想在这段这文本的数字后面重复加上一个与最后一个数字相同的数字,即替换后的文本应该为

1.1.1.11 aaaa
2.2.2.22 bbbb
3.3.2.33 ccca

那么我们可以使用(\d) 替换成 11
如图:

这里括号里面的内容我们称之为 捕获组.
在替换里面我们可以使用$1进行引用,同样的在查找中我们也可以引用,称之为反向引用,只不过引用的方式改为 \1,它的使用方法跟替换中基本一致
比如我们现在想把原文中同一行数字全部相同的都查找出来,那么我们可以使用反向引用来查找
如图:


此处我们使用了\1\2
在捕获组中,第一个左括号与其匹配的右括号括起来的内容即用\1引用,\2同理,即第二 个左括号与其匹配的右括号括起来的内容.
在替换中也同样如此,$1 即 第一个左括号与其匹配的右括号括起来的内容

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容