正则表达式在目标URL路径之前排除某些字符串

时间:2014-10-09 16:31:00

标签: regex

我遇到了一个问题,我似乎无法从我的正则表达式中排除诸如“注册和登录”之类的certan字符串。我试图获取包含/bag/order/orderinfo.aspx的URL以及该路径之后的任何内容,但问题是它正在拾取某些url referrer路径和其他参数,这些参数不会导致我正在尝试的正确页面使用。我在/ Bookbag之前尝试了[^ registration | login],但是没有做任何事情

这是我的正则表达式:

\/Bookbag\/order\/OrderInfo\.aspx.*

目前正在使用以下所有网址,但我只想包含以下三个路径:

http://test.com/bag/order/orderinfo.aspx
http://test.com/bag/order/orderinfo.aspx?empty=0&txttarget=
http://test.com/bag/order/orderinfo.aspx?txttarget=

不是这些链接,我目前的RegEx设置目前正在接收这些链接:

urlreferrer=http://test.com/catalog/&returl=http://test.com/bag/order/orderinfo.aspx&cancelurl=http://test.com/catalog/login

http://test.com/bag/registration/registrationcheckout_aboutyou.aspx?type=checkoutwithoutreg&email=test&txttarget=http://www.test.com/bag/order/ordercourseinfo.aspx\

1 个答案:

答案 0 :(得分:1)

你可以像这样使用负向前瞻性正则表达式:

/^(?!.*(registration|login)).*?\/bag\/order\/OrderInfo\.aspx.*$/gmi

Javascript RegEx Demo