正则表达式\1 \2 \3,通俗快速理解方式,如有错误请大佬纠正

资料学习,参考
https://regex101.com/
https://www.cnblogs.com/gddcz/p/9131597.html
https://github.com/ziishaned/learn-regex/blob/master/translations/README-cn.md
Author:xiaozhu_sai

文章仅供学习交流

先上表达式和例子:

1、(123)(456)\2\1 =>

balalaald12312343333123456456123312343333

2、(\S+)(\S+)\2{3,} =>

laald1231哇哈哈哈哈哈哈哈
rekk选
22222333333645


  • 第一个表达式是匹配:123456的独立匹配,然后关于\2是指456(第二个捕获组)的内容,是内容而不是匹配(在第二个例子就显示了出来)。
  • 第二个表达式的第一个(\S+)是匹配前非空格所有的字符,如果不清楚\S+请自行资料,第二个(\S+)同理,
    • 然后\2可以通俗的理解为是指第二个(\S+)匹配到的内容做为变量的变量名{3,}指第二个匹配到的内容重复三次及以上。
    • 所以第二个表达式可以理解为,匹配一个非空格字符集加上后面一个重复至少四次(本身有1次+3次及上)的非空格字符集。

猜你喜欢

转载自blog.csdn.net/weixin_42375356/article/details/114274838