Regex 网站路径导致使用网站名称时出现问题
我有两个网站:Regex 网站路径导致使用网站名称时出现问题,regex,coldfusion,lucee,Regex,Coldfusion,Lucee,我有两个网站: website.com dev.website.com 基于上述情况,两个网站都有不同的配置。我写了一个代码来识别开发人员和主网站,但它总是在接收开发人员,即使我在主网站上 代码如下: <cfif ReFindNoCase("^(dev\.)?website\.com$",CGI.SERVER_NAME) NEQ 0> 处理此问题的一种更简单、更少正则性的方法可能是 <cfif listFirst( cgi.server_name, '.') NEQ 'd
website.com
dev.website.com
基于上述情况,两个网站都有不同的配置。我写了一个代码来识别开发人员和主网站,但它总是在接收开发人员,即使我在主网站上
代码如下:
<cfif ReFindNoCase("^(dev\.)?website\.com$",CGI.SERVER_NAME) NEQ 0>
处理此问题的一种更简单、更少正则性的方法可能是
<cfif listFirst( cgi.server_name, '.') NEQ 'dev' >
但为了简单起见,您应该更喜欢Scott的解决方案,除非您确实需要检查完整的主机名:
<cfset inDevelopment = (listFirst(CGI.SERVER_NAME, ".") eq "dev")>
<cfset inProduction = (not inDevelopment)>
另请注意:如果您的域实际上是
dev.com
,则listFirst
-解决方案将始终将您置于开发中:因为?
等同于开发的“匹配零个或多个”实例“这两种情况都是这样。摆脱?
将引用dev-正确吗?否。0
表示它不是dev。如果要使用常识…;-)@Ageax我喜欢正则表达式,但它们并不总是工作的最佳工具。
<cfset inDevelopment = (listFirst(CGI.SERVER_NAME, ".") eq "dev")>
<cfset inProduction = (not inDevelopment)>