参考: http://java.dzone.com/articles/backreferences-java-regular
以前没用过这种用法,mark。
介绍
反向引用是基于组的,组就是把多个字符当作单一的单元看待。组是通过在一对小括号(()
)内放置正则字符来创建的,每对小括号对应一个组。
反向引用是便捷的,允许重复正则而不需要再写一次。可以通过 \#
来引用前面定义的组,#
是组的序号,从 1
开始。
正则引擎在处理匹配时,要求 反向引用与所引用的组 匹配的内容必须是一样的:即,(\d\d\d)\1
匹配 123123
,而不匹配123456
。