2012-05-16 19 views
1

我試圖在back reference上尋找更多信息。但我發現的那些不是很清楚。所以我很困惑。我有這樣的一個web.configURL中的BackReferences,R1,R2重定向規則問題

<system.webServer> 
<rewrite> 
    <rules> 
    <clear /> 

    <rule name="CTVNews Articles" stopProcessing="true"> 
     <match url="(.*?)CTVNews(/?)(.*)" /> 
     <action type="Redirect" url="http://www.ctvnews.ca{R:2}{R:3}" appendQueryString="true" redirectType="Permanent" /> 
    </rule> 

所以,我知道這是定期expression.That規則是容易理解的,但對於URL =「HTTP://www.ctvnews .ca/generic {R:2} {R:3}。請問有人可以解釋一下R2和R3是什麼?爲什麼我們有R2,R3,而不是R1和R2?

非常感謝

回答

1

在你提供的XML片段中,正則表達式有三個「捕獲組」 - 也就是使用括號(「(」和「)」 )。這些「捕捉」他們內部的任何東西,然後可以通過數字來引用。有編號從左到右,從1開始。

然後在上面的<action>標記中,{R:2}部分指的是捕獲正則表達式中的組。有三個這樣的組,但<action>只使用第二和第三。第一個被捕獲但沒有被使用。