宜昌本地软件开发与弱电工程服务商
项目咨询 · 快速响应
您当前的位置: > 博客2 > AS2与AS3技术

[AS3]AS3字符串的format功能实现(as3字符串格式)

2016-10-13 00:16:48 点击量:9 标签: 收藏本文

使用C#的朋友都知道,string.Format();还是挺好用的,如:

  1. string str1 = "杰卫,这里有{0}个苹果,和{1}个香蕉!{0}个苹果{3} 元,{1}个香蕉{4} 元,一共{2}钱"
  2. string str2 = "Hei jave, there are {0} apples,and {1} banana! {2} dollar all together"
  3. Console.WriteLine(string.Format(str1, 5, 10, 20, 7, 13)); 
  4. Console.WriteLine(string.Format(str2, 5, 10, 20)); 
  5. //输出: 
  6. 杰卫,这里有5个苹果,和10个香蕉!5个苹果7 元,10个香蕉13 元,一共20钱 
  7. Hei jave, there are 5 apples,and 10 banana! 20 dollar all together 

在as3中,String 类没有提供类似的方法,我们可以自己实现:

  1. private function formate(str:String, ...args):String{ 
  2.     for(var i:int = 0; i<args.length; i++){ 
  3.         strstr = str.replace(new RegExp("\\{" + i + "\\}", "gm"), args[i]); 
  4.     } 
  5.     return str; 

使用:

  1. var str1:String = "杰卫,这里有{0}个苹果,和{1}个香蕉!{0}个苹果{3} 元,{1}个香蕉{4} 元,一共{2}钱"
  2. var str2:String = "Hei jave, there are {0} apples,and {1} banana! {2} dollar all together"
  3.  
  4.  
  5. trace(formate(str1, 5, 10, 20, 7, 13)); 
  6. trace(formate(str2, 5, 10, 20)); 

 

ABOUT US
宜昌农人网络科技有限公司

我们是一家提供综合软件外包与弱电工程服务的技术公司。

业务涵盖定制软件、管理系统、网站、小程序、APP、系统集成、网络布线、监控安防、门禁、机房建设及长期技术维护。

公司地址:湖北省宜昌市伍家岗区东站二路6号三峡(宜昌)大数据产业园海洋馆二楼A203室