2011-05-28 51 views

回答

5

合併兩個正則表達式AB,做到:

/(A|B)/ 

這可能會改變一組捕獲括號中的順序。另外請注意,可能不需要括號,例如A|B可能適用於您的簡單情況。

在支持具有命名捕捉的正則表達式的其他語言中,可以使用這些語言。

+2

是雖然你並不真的需要有括號;同樣重要的是要注意「|」運算符比大多數其他運算符的綁定更鬆散,因此對於表達式的左側和右側分組通常需要使用括號。 – Pointy 2011-05-28 15:00:36

0

您可以OR-他們:

XX(XX)-XXXXXX(X)|*XXXX 

,這樣無論是將匹配...

你麻煩的是,第二個匹配,當你沒有得到\ 1($ 1 )和\ 2($ 2)設置...

0

使用| (要麼)。

即:

/^([0-9]{2,4})\-([0-9]{6,7})|(\*([0-9]{4})$/