我尝试使用正则表达式在watchguard firebox webblocker列表中添加允许的网址。我试图通过允许一个条目适用于包含子域的网站的www和非www版本来保持我的列表简短。我目前正在使用以下内容:
(www\.)?ups\.com/*
哪个适用于两个版本以及子域名,但有一个问题,因为它允许其他网站通过ups.com结束他们的域名,例如jobs-ups.com
如何让正则表达式知道如果没有子域,那么url只会是你之前没有任何其他字母的ups.com,那么它会阻止像jobs-ups.com这样的网站?
答案 0 :(得分:1)
您可以使用插入符^
来完成此操作
^(?:www\.)?ups\.com\/
插入符号强制检查字符串的开头。这意味着它不会匹配mid-string,这就是你想要的。
根本不熟悉firebox,但一般你应该逃避你的句号和正斜杠。您也通常也使用非捕获组。但如果这是简单的正则表达式,您仍然可以保留原始格式:
^(www.)?ups.com/*