2011-08-12 39 views
0

我在尋找的是從href屬性中提取URL的方法。我關心所有參數,除了sessionToken參數。從另一個值中提取值(可能使用RegEx)

所以這...

<A class=ContentURL href="javascript:void(window.open('../content/ModuleList.aspx?PageID=module&amp;sessionToken=[sessionToken]','report','scrollbars=yes,resizable=yes,width=640,height=500'))">Manage Applications</A> 

應該給我這個...

../content/ModuleList.aspx?PageID=module 

這...

<A class=ContentURL href="javascript:void(window.open('../content/ModuleList.aspx?PageID=module&amp;sessionToken=[sessionToken]&amp;Token=DateTime','report','scrollbars=yes,resizable=yes,width=640,height=500'))">Manage Applications</A> 

應該給我這個...

../content/ModuleList.aspx?PageID=module&amp;Token=DateTime 

我不得不想象有一種方法可以使用RegEx來做到這一點,我希望有人能告訴我如何。

+1

請不要在「C#」前添加標題。我們在[SO]上使用標籤。 –

回答

1

如果所有的環節都指定相同的格式,然後提取的URL模式很簡單:

href="javascript:void\(window\.open\('(.+?)'.*?" 

URL將被第一組捕獲:(.+?)

現在已經提取了網址,你可以隨心所欲地做任何事情。如果要刪除sessionToken參數而不中斷GET字符串(意外刪除?&字符),則應該將(\??)sessionToken=[^&]*&?替換爲第1個捕獲組(如果sessionToken是第一個參數,則爲?,如果不是第一個參數,則爲空字符串)。如果sessionToken是最後一個參數,您可能還想刪除尾部&,但這不一定。

相關問題