1. 程式人生 > >java正則表示式之捕獲分組與Back引用

java正則表示式之捕獲分組與Back引用

一.捕獲分組

java正則表示式中以()括起來的內容表示一個分組,像((A)(B(C)))這個表示式中,共存在四個分組:

1.ABC

2.A

3.BC

4.C

很容易發現,分組是按照左邊的括號出現的順序來標號的

這就是捕獲分組

二.Back引用

我們以下面這個正則表示式為例:


這個正則表示式在匹配的過程中,先匹配雙引號"或者單引號',如果匹配的話,將其記為分組1;

然後匹配接下來的字元,雖然可以是任意多個的任意字元,但要想匹配該正則表示式,還需要匹配最後一項\1;

匹配\1指的是匹配分組1,即:

如果分組1是雙引號",最後必須有一個雙引號";

如果分組1是單引號',最後必須有一個單引號';

很明顯,像"abc"或'abc'可以匹配,而"abc'或'abc"就不能匹配

-------------------------------------------------------------------------------------------------------------------

後記:如有錯誤請指出:)