java,无法理解嵌套捕获组的上下文中的反向引用的概念

时间:2016-03-04 00:11:03

标签: java regex capturing-group

我是Java新手,正在尝试学习捕获组的概念。我读了Java教程oracle:

  

对于嵌套捕获组,反向引用的工作方式完全相同   方式:指定反斜杠后跟要编号的组编号   召回。

由于我的经验不足,我无法从概念上理解它,本教程没有提供任何代码示例。有人可以向我解释这个概念,最好是用一些代码吗?在此先感谢您的任何帮助

1 个答案:

答案 0 :(得分:0)

我认为他们正在谈论这个

 (                             # (1 start)
      nested
      (                             # (2 start)
           groups  
      )                             # (2 end)
 )                             # (1 end)
 \s     
 (                             # (3 start)
      \1 
      \s 
      \2+ 
 )                             # (3 end)

您可以看到第1组包含第2组。

然后,您可以使用反向引用来引用组1中匹配的内容 这也将包含第2组中匹配的内容。

 **  Grp 0 -  ( pos 0 , len 38 ) 
nestedgroups nestedgroups groupsgroups  
 **  Grp 1 -  ( pos 0 , len 12 ) 
nestedgroups  
 **  Grp 2 -  ( pos 6 , len 6 ) 
groups  
 **  Grp 3 -  ( pos 13 , len 25 ) 
nestedgroups groupsgroups