返回 导航

Flex

hangge.com

AS3 - 解决replace()方法只能替换第一个字符,字符串的问题

作者:hangge | 2015-01-30 10:49
问题描述:Flex/Flash中字符串有replace()方法,可以方便的替换字符串,比如我想把一个字符串里的":"都替换成"_"
var fileName:String = "18:18:20";
fileName = fileName.replace(":","_");
结果会发现结果是"18_18:20",即只有第一个匹配的字符被替换了。而AS3里面有没有replaceAll()这个方法。

解决办法1:replace()方法使用正则表达式替换
var fileName:String = "18:18:20";
//正则表达式中设置了 g(全局)标志,表示替换全部
fileName = fileName.replace(/:/g,"_");

解决办法2:使用split()把字符串拆分成数组,再用join()拼接会字符串
var fileName:String = "18:18:20";
fileName = fileName.split(":").join("_");
评论

全部评论(1)

回到顶部