Action Script 3.0:如何从字符串中提取两个值。?

时间:2010-04-01 12:07:59

标签: flex flash actionscript-3 flashvars

HI

我有一个网址

var str:String = "conn=rtmp://server.com/service/&fileId=myfile.flv"

var str:String = "fileId=myfile.flv&conn=rtmp://server.com/service/"

str 可能是这样的,但我需要从字符串中获取“conn”和“fileId”的值。

我怎么能为此写一个函数。

3 个答案:

答案 0 :(得分:1)

var str:String = "fileId=myfile.flv&conn=rtmp://server.com/service/"
var fa:Array = str.split("&");
for(var i:uint=0;i<fa.length;i++)
    fa[i] = fa[i].split('=');

这就是“fa”变量最终的结果:

fa = [
[ “FILEID”, “myfile.flv”],
[ “conn将”, “设rtmp://server.com/service/”]
]

答案 1 :(得分:1)

我猜你在字符串中遇到第二个'='时遇到了麻烦。幸运的是,ActionScript的String.Split方法支持拆分字符串,因此以下代码应该可以工作:

var str:String = "conn=rtmp://server.com/service/&fileId=myfile.flv";
var conn:String = (str + "&").Split("conn=")[1].Split("&")[0];

var str:String = "fileId=myfile.flv&conn=rtmp://server.com/service/";
var fileId:String = (str + "&").Split("fileId=")[1].Split("&")[0];

注意:我正在向字符串附加&,以防该字符串不包含任何我们正在寻找的url参数。

答案 2 :(得分:0)

 var url:String = "fileId=myfile.flv&conn=rtmp://server.com/service/";

 var strArray:Array = url.split(/=/);

trace(strArray[0]) //Just to test

返回一个数组,在索引0 - 2(任何偶数)中带有'conn或fileid'一词,1,3的替代值是其中的信息。


还是你需要的其他东西?