|
蓝森林 http://www.lslnet.com 2006年8月25日 8:28
[待解决中]ASP中如何正确获取www.后的域名
目前我的代码是这样:
<%
Function GetUrl
dim a,b,c,d
a=Request.ServerVariables("SERVER_NAME")
b=len(a)
c=b-4
d=right(a,c)
response.write (d)
End Function
%>
<%=GetUrl%>
目前是利用减域名前4位的做法(减www.),但如果使用域名前长于4位的话。例如要进abcdefg.xxx.com,获取到当前地址就变成了efg.xxx.com。我要正确做到无论进入www.xxx.com还是xxx.com或是任何一个二级*.xxx.com,都只截取xxx.com。怎么改?
如果进xxx.com再减4位不就成了com了,那还得了。我就是要无论进哪个二级域名或国际域名都要截取xxx.com部分
------------------------------------------
[color=crimson]标题不合格,请遵守发帖规则。 --- by kalloer [/color] |
请教:ASP中如何正确获取www.后的域名
你应该学会灵活变化,尽量熟悉ASP的各个函数作用
[code]
<%
dim a,b,c,d
a=Request.ServerVariables("SERVER_NAME")
b=instr(a,".")
c=len(a)-b
d=right(a,c)
response.write (d)
%>
[/code] |
请教:ASP中如何正确获取www.后的域名
楼上的兄弟,你的代码我测试过了。有变化,但还是错误的
http://www.xxxx.com 进后变成xxxx.com
http://xxxx.com 进后变成com把xxxx.都去掉了。
http://*.xxxx.com 进后还是默认的*.xxxx.com |
请教:ASP中如何正确获取www.后的域名
aa="http://wwwwwafewfwe.blueidea.com"
bb=mid(aa,instr(aa,"."))
意思就是截取从第一个点开始以后的东西
你试一下了 |
请教:ASP中如何正确获取www.后的域名
不行哦。我按照你的代码:
<%
Function GetUrl
dim a,b
a=Request.ServerVariables("SERVER_NAME")
b=mid(a,instr(a,"."))
response.write (b)
End Function
%>
<%=GetUrl%>
进 http://www.abc.com 看到.abc.com
进 abc.com 看到.com
进 *.abc.com 显示的也是.abc.com |
【等待解决中】ASP中如何正确获取www.后的域名
用正则,代码如下:
<%
Function GetUrl()
dim url
url=Request.ServerVariables("SERVER_NAME")
Set reg = New RegExp
reg.Pattern = "^(?:http)?s?(?::\/\/)?(?:www\.|\*\.|\.)?(.*)$"
reg.Global = True
reg.IgnoreCase = True
GetUrl = reg.Replace(url,"$1")
End Function
%>
<%=GetUrl%> |
[等待解决中]ASP中如何正确获取www.后的域名
谢谢wjmcool。
不过你的代码还是存在一些问题。
例如:
进入 http://www.123.com 时显示123.com
进入 123.com 时显示123.com
但进入 xp.123.com 时显示xp.123.com 这里没有去xp。也就是说除了www以及@的解析。其他的都没有成功去除。
不知道还能怎么改进? |

reg.Pattern = "^(?:http)?s?(?::\/\/)?(?:www\.|\*\.|\.)?(.*)$"
这里的屏蔽www和@已经成功了。但*并没有成功 |
如下,测试过了:
[code]
<%
url=Request.ServerVariables("SERVER_NAME")
url=zhurl(url)
response.write url
'考虑了.com.cn情况
Function zhurl(x)
if x<>"" then
if instr(x,".com.cn")=0 then
a=ubound(split(x,"."))
if a=1 then
zhurl=x
else
zhurl=split(x,".")(a-1)&"."&split(x,".")(a)
end if
else
a=ubound(split(x,"."))
if a=2 then
zhurl=x
else
zhurl=split(x,".")(a-2)&"."&split(x,".")(a-1)&"."&split(x,".")(a)
end if
end if
end if
end Function
%>
[/code] |
那.net.cn或是.gov.cn呢?
不知weiqunxing是否得考虑像www.abc.123.com(如域名为www.123.com)的呢? |
上面的2个地址其顶级玉米都是 123.com
[code]
<%
'url=Request.ServerVariables("SERVER_NAME")
url="www.cn-pn.com"
url=zhurl(url)
response.write url
'考虑了.com.cn,.net.cn,.gov.cn情况
Function zhurl(x)
if x<>"" then
key=".com.cn|.net.cn|.gov.cn"
keyv=split(key,"|")
if instr(x,keyv(0))=0 and instr(x,keyv(1))=0 and instr(x,keyv(2))=0 then
a=ubound(split(x,"."))
if a=1 then
zhurl=x
else
zhurl=split(x,".")(a-1)&"."&split(x,".")(a)
end if
else
a=ubound(split(x,"."))
if a=2 then
zhurl=x
else
zhurl=split(x,".")(a-2)&"."&split(x,".")(a-1)&"."&split(x,".")(a)
end if
end if
end if
end Function
%>
[/code] |
|