Action Script 3.0 数组与字符串的转换
在ActionScript中,数组可以与字符串数据进行相互转换。例如,可以将一个字符串数据转换为一个包含单个字符元素的数组,也可以将一个数组的各个元素合并在一起,将其转换为字符串数据。
1.字符串转换为数组
在编程过程中,经常会遇到一些由英文短句(以空格分隔单词)和由逗号(或其他符号)组成的字符串型数据。通过使用split()方法,可以将这些字符串类型的数据切割,转换为数组对象。split()方法的使用方式如下所示。
字符串.split(参数)
split()方法有两种参数,分别为delimiter和limit。
delimiter参数用于指定拆分字符串的位置。该参数可以是任何类型的数据,通常为字符串的正则表达式。例如,一个字符串型数据是由一段英文组成的,用空格作为split()方法的delimiter参数可以将每个单词拆分为数组的一个元素,如下所示。
var s:String="The five boxing wizards jump quickly";
//声明字符串变量The five boxing wizards jump quickly
var a:Array=s.split(" ");
//使用split()方法拆分字符串,并将其赋值给数组a
trace(a);//输出新的数组a
执行这段代码,即可将字符串变量s拆分,并输出数组a,如下所示。
The,five,boxing,wizards,jump,quickly
limit参数用于定义拆分字符串型数据后,获得的数组中最大的元素数。如未定义该参数,则所有的元素都会被放进新数组。例如,将split()方法的limit参数定义为5后再拆分上面的字符串型数据s,如下所示。
var s:String="The five boxing wizards jump quickly";
//声明字符串变量The five boxing wizards jump quickly
var a:Array=s.split(" ",5);
typeof array
//使用split()方法拆分字符串,并将其赋值给数组a,定义拆分的数组不得超过5个元素
trace(a);//输出数组a
执行上面的代码,即可输出新的数组a,如下所示。
The,five,boxing,wizards,jump
2.数组转换为字符串
在前面的小节里提到了将字符串型数据转换为数组的方法。事实上,在ActionScript 中,数组也可以转换为字符串型数据。ActionScript提供了一个内置的方法join()来实现这类操作。
join()方法仅有一种参数,即sep参数,将数组转换为字符串后元素的分隔符。sep参数为可选参数,如不设置该参数,则系统将默认用逗号分开数组的各个元素,如下所示。
var temparray:Array=new Array("oh","my","god");
//声明数组temparray包含3个元素,即"oh"、"my"和"god"
trace(temparray.join());
//输出数组转换为字符串型数据后的值
执行上面的代码,即可输出字符串型数据的结果,如下所示。
组合数组的元素,例如,将sep参数设置为或运算符“|”,如下所示。
var newarray:Array=new Array("n","e","w","a","r","r","a","y");
//声明数组newarray,并为其赋值[n,e,w,a,r,r,a,y]
trace(newarray.join("|"));
//将数组newarray转换为字符串型数据,分隔符为“|”,并输出。
执行上面的代码,即可输出带分隔符“|”的字符串型数据,如下所示。
n|e|w|a|r|r|a|y
如需要将数组转换为一个单词,可以将分隔符设置为空,如下所示。
var newarray:Array=new Array("a"," ","l","o","t"," ","o","f");
//声明数组newarray,并为其赋值[a, ,l,o,t, ,o,f]
trace(newarray.join(""));
//将数组newarray转换为字符串型数据,分隔符为空,并输出
执行这段代码,即可输出无分隔符的字符串型数据,如下所示。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。