我正在寻找的是一种从href属性中提取URL的方法。我关心所有参数除了sessionToken参数。
所以这......
<A class=ContentURL href="javascript:void(window.open('../content/ModuleList.aspx?PageID=module&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&sessionToken=[sessionToken]&Token=DateTime','report','scrollbars=yes,resizable=yes,width=640,height=500'))">Manage Applications</A>
应该给我这个......
../content/ModuleList.aspx?PageID=module&Token=DateTime
我必须想象有一种方法可以使用RegEx来做到这一点,我希望有人可以告诉我如何。
答案 0 :(得分:1)
如果您的所有链接都具有您指定的相同格式,则提取网址的模式很简单:
href="javascript:void\(window\.open\('(.+?)'.*?"
第一组将抓取网址:(.+?)
。
现在提取了网址,您可以随意执行任何操作。如果要在不破坏GET字符串的情况下删除sessionToken参数(通过意外删除?
或&
字符),则应将(\??)sessionToken=[^&]*&?
替换为第一个捕获组(如果是sessionToken,则为?
是第一个参数,如果不是,则为空字符串。如果sessionToken是最后一个参数,您可能还想删除尾随&
,但这不一定。