我正在尝试解析一些url字符串,以便在Flex中进行比较。我真的很新兴,所以只是写下我想做的不确定这段代码是否有效。
// urlone: http://www.helloworld.com/hello
// urltwo: http://www.goodbye.com/
public function compareURLHost(urlone:String,urltwo:String):Boolean
{
var displayURL:URL = URL(urlone);
var compareURL:URL = URL(urltwo);
// compare www.helloworld.com to www.goodbye.com
if(displauURL.hostname == compareURL.hostname)
return true;
return false;
}
答案 0 :(得分:1)
我认为你正在寻找URLUtils。您可以获取端口,主机名,serverName等。
答案 1 :(得分:0)
URLUtils可以提供帮助,但它们并不总是您所需要的。例如,我有一个项目,我需要从URL中删除单个目录。这可能听起来很愚蠢,但客户希望他们的公开可见XML文件不显示实际的URL,这是他们的解决方案。在那种情况下,我做了:
var url:String = "http://someurl.com/dir1/dir2/file.ext"
url = url.slice(url.indexOf('dir1'),5); //the four chars of the url + "/"
trace (url); //http://someurl.com/dir2/file.ext
您还可以使用String.replace将一组字符替换为另一组(例如,如果我的客户想要通过交换网址中的dir1 dir5来隐藏网址)
var url:String = "http://someurl.com/dir5/dir2/file.ext"
var patten:RegExp = /dir5/;
url.replace(pattern,"dir1");
trace (url); //http://someurl.com/dir1/dir2/file.ext