几个域的正则表达式

时间:2015-08-05 14:52:00

标签: regex

我正在使用正则表达式来确定何时触发跟踪代码。

如果其中一个网站的访问者位于这三个网域中的一个网站上,则应触发标记:

k

我实际上有一个有效的正则表达式。但是我并不自信,并希望在这个板上把它从民间反弹。

这就是我所拥有的。是否有更简单,更优雅或更强大的正则表达式用于匹配3个域?

 - www.grousemountainlodge.com 
 - www.glacierparkinc.com
 - reserveglacierdenali.com

根据一些答案,此正则表达式应排除其他域名,例如^(www\.)?((glacierparkinc|grousemountainlodge)\.com)$|(^reserveglacierdenali\.com)$ 或类似的。

2 个答案:

答案 0 :(得分:1)

它必须位于的起始位置 def new_applications(number, new_castings_for_user) content_tag :span, "(#{number})", fa_icon: "user-plus", class: "icon-new-applications#{' highlight' if new_castings_for_user}" end 。所以:

www.

如果它匹配,那么就做点什么。

Regex live here.

希望它有所帮助。

答案 1 :(得分:1)

我不确定glacierparkinc.com是否匹配,如果没有www.前缀 - 从您的列表中看起来似乎没有,但是从您的正则表达式看来它似乎会匹配。

在任何一种情况下,我猜你可以简化一下:

^(?:www\.(?:glacierparkinc|grousemountainlodge)|reserveglacierdenali)\.com$

注意使用(?:)而不是():这意味着没有捕获的正向前瞻断言。最好的做法是不要在不需要时捕捉 - 节省时间和记忆。