正则表达式-在没有完整路径的情况下匹配多个不包含特定查询的URL

时间:2019-07-23 09:22:34

标签: regex

我正在尝试匹配以下没有完整路径的域。 我面临的问题是我尝试的所有问题,还选择了带有/ product /的URL 请注意,view=可以等于任何东西。

匹配:https://www.ourwebsite.co.uk/

匹配:https://www.ourwebsite.co.uk

匹配:ourwebsite.co.uk

不匹配:ourwebsite.co.uk/search

不匹配:ourwebsite.co.uk/search?q=test

不匹配:https://ourwebsite.co.uk/product/

不匹配:https://www.ourwebsite.co.uk/product

不匹配:https://ourwebsite.co.uk/product/product-name

不匹配:https://www.ourwebsite.co.uk/page

不匹配:https://www.ourwebsitey.co.uk/collection/

不匹配:https://www.ourwebsite.co.uk/search?q=test*

匹配:https://www.ourwebsite.co.uk/?utm_source=Facebook&utm_medium=cpm&utm_campaign=mof&rs=facebook2_6125507649009_6125720949209_6134410260209&fbclid=IwAR31D2CHnvar5p1Ce0ZoYaHTJRPwaN9aa2q3dsyDu3hGCLkjKNtti3pDm2I

不匹配” https://www.ourwebsite.co.uk?view=test&utm_source=Facebook&utm_medium=cpm&utm_campaign=mof&rs=facebook2_6125507649009_6125720949209_6134410260209&fbclid=IwAR31D2CHnvar5p1Ce0ZoYaHTJRPwaN9aa2q3dsyDu3hGCLkjKNtti3pDm2I$

不匹配:https://www.ourwebsite.co.uk/?view=testing

不匹配:https://www.google.com

我尝试了其他视图选项。

查看链接:https://regex101.com/r/nGtWaC/3

(.*ourwebsite\.co\.uk)\/(\??)(?!.*[a-z])(?!.*\bview=\b)(.*)

我尝试的所有操作始终选择完整路径。

它用于Google Optimize,所以我不确定所使用的正则表达式的味道。

已更新!

已解决..

.*ourwebsite.co\.uk(?:\/\?|\?|\/$|$)(?!.*view=).*

https://regex101.com/r/nGtWaC/5

请让我知道是否可以做得更好。

1 个答案:

答案 0 :(得分:0)

您的表情看起来很棒!我还会添加起点和终点锚点,也许还有更多边界,类似于:

^(?:https?:\/\/)?(?:www\.)?ourwebsite\.co\.uk(?:\/\?|\?|\/$|$)(?!.*view=).*$

DEMO