home *** CD-ROM | disk | FTP | other *** search
/ Mac Easy 2012 April / ME_04_2012.iso / Video-Tutorial / iPhoto / media / player.swf / scripts / mx / utils / StringUtil.as < prev    next >
Encoding:
Text File  |  2011-11-11  |  5.4 KB  |  219 lines

  1. package mx.utils
  2. {
  3.    import mx.core.mx_internal;
  4.    
  5.    use namespace mx_internal;
  6.    
  7.    public class StringUtil
  8.    {
  9.       mx_internal static const VERSION:String = "4.5.0.20967";
  10.       
  11.       public function StringUtil()
  12.       {
  13.          super();
  14.       }
  15.       
  16.       public static function trim(param1:String) : String
  17.       {
  18.          if(param1 == null)
  19.          {
  20.             return "";
  21.          }
  22.          var _loc2_:int = 0;
  23.          while(isWhitespace(param1.charAt(_loc2_)))
  24.          {
  25.             _loc2_++;
  26.          }
  27.          var _loc3_:int = param1.length - 1;
  28.          while(isWhitespace(param1.charAt(_loc3_)))
  29.          {
  30.             _loc3_--;
  31.          }
  32.          if(_loc3_ >= _loc2_)
  33.          {
  34.             return param1.slice(_loc2_,_loc3_ + 1);
  35.          }
  36.          return "";
  37.       }
  38.       
  39.       public static function trimArrayElements(param1:String, param2:String) : String
  40.       {
  41.          var _loc3_:Array = null;
  42.          var _loc4_:int = 0;
  43.          var _loc5_:int = 0;
  44.          if(param1 != "" && param1 != null)
  45.          {
  46.             _loc3_ = param1.split(param2);
  47.             _loc4_ = int(_loc3_.length);
  48.             _loc5_ = 0;
  49.             while(_loc5_ < _loc4_)
  50.             {
  51.                _loc3_[_loc5_] = StringUtil.trim(_loc3_[_loc5_]);
  52.                _loc5_++;
  53.             }
  54.             if(_loc4_ > 0)
  55.             {
  56.                param1 = _loc3_.join(param2);
  57.             }
  58.          }
  59.          return param1;
  60.       }
  61.       
  62.       public static function isWhitespace(param1:String) : Boolean
  63.       {
  64.          switch(param1)
  65.          {
  66.             case " ":
  67.             case "\t":
  68.             case "\r":
  69.             case "\n":
  70.             case "\f":
  71.                return true;
  72.             default:
  73.                return false;
  74.          }
  75.       }
  76.       
  77.       public static function substitute(param1:String, ... rest) : String
  78.       {
  79.          var _loc4_:Array = null;
  80.          if(param1 == null)
  81.          {
  82.             return "";
  83.          }
  84.          var _loc3_:uint = uint(rest.length);
  85.          if(_loc3_ == 1 && rest[0] is Array)
  86.          {
  87.             _loc4_ = rest[0] as Array;
  88.             _loc3_ = _loc4_.length;
  89.          }
  90.          else
  91.          {
  92.             _loc4_ = rest;
  93.          }
  94.          var _loc5_:int = 0;
  95.          while(_loc5_ < _loc3_)
  96.          {
  97.             param1 = param1.replace(new RegExp("\\{" + _loc5_ + "\\}","g"),_loc4_[_loc5_]);
  98.             _loc5_++;
  99.          }
  100.          return param1;
  101.       }
  102.       
  103.       public static function repeat(param1:String, param2:int) : String
  104.       {
  105.          if(param2 == 0)
  106.          {
  107.             return "";
  108.          }
  109.          var _loc3_:String = param1;
  110.          var _loc4_:int = 1;
  111.          while(_loc4_ < param2)
  112.          {
  113.             _loc3_ += param1;
  114.             _loc4_++;
  115.          }
  116.          return _loc3_;
  117.       }
  118.       
  119.       public static function restrict(param1:String, param2:String) : String
  120.       {
  121.          var _loc6_:uint = 0;
  122.          if(param2 == null)
  123.          {
  124.             return param1;
  125.          }
  126.          if(param2 == "")
  127.          {
  128.             return "";
  129.          }
  130.          var _loc3_:Array = [];
  131.          var _loc4_:int = param1.length;
  132.          var _loc5_:int = 0;
  133.          while(_loc5_ < _loc4_)
  134.          {
  135.             _loc6_ = uint(param1.charCodeAt(_loc5_));
  136.             if(testCharacter(_loc6_,param2))
  137.             {
  138.                _loc3_.push(_loc6_);
  139.             }
  140.             _loc5_++;
  141.          }
  142.          return String.fromCharCode.apply(null,_loc3_);
  143.       }
  144.       
  145.       private static function testCharacter(param1:uint, param2:String) : Boolean
  146.       {
  147.          var _loc9_:uint = 0;
  148.          var _loc11_:Boolean = false;
  149.          var _loc3_:Boolean = false;
  150.          var _loc4_:Boolean = false;
  151.          var _loc5_:Boolean = false;
  152.          var _loc6_:* = true;
  153.          var _loc7_:uint = 0;
  154.          var _loc8_:int = param2.length;
  155.          if(_loc8_ > 0)
  156.          {
  157.             _loc9_ = uint(param2.charCodeAt(0));
  158.             if(_loc9_ == 94)
  159.             {
  160.                _loc3_ = true;
  161.             }
  162.          }
  163.          var _loc10_:int = 0;
  164.          while(_loc10_ < _loc8_)
  165.          {
  166.             _loc9_ = uint(param2.charCodeAt(_loc10_));
  167.             _loc11_ = false;
  168.             if(!_loc4_)
  169.             {
  170.                if(_loc9_ == 45)
  171.                {
  172.                   _loc5_ = true;
  173.                }
  174.                else if(_loc9_ == 94)
  175.                {
  176.                   _loc6_ = !_loc6_;
  177.                }
  178.                else if(_loc9_ == 92)
  179.                {
  180.                   _loc4_ = true;
  181.                }
  182.                else
  183.                {
  184.                   _loc11_ = true;
  185.                }
  186.             }
  187.             else
  188.             {
  189.                _loc11_ = true;
  190.                _loc4_ = false;
  191.             }
  192.             if(_loc11_)
  193.             {
  194.                if(_loc5_)
  195.                {
  196.                   if(_loc7_ <= param1 && param1 <= _loc9_)
  197.                   {
  198.                      _loc3_ = _loc6_;
  199.                   }
  200.                   _loc5_ = false;
  201.                   _loc7_ = 0;
  202.                }
  203.                else
  204.                {
  205.                   if(param1 == _loc9_)
  206.                   {
  207.                      _loc3_ = _loc6_;
  208.                   }
  209.                   _loc7_ = _loc9_;
  210.                }
  211.             }
  212.             _loc10_++;
  213.          }
  214.          return _loc3_;
  215.       }
  216.    }
  217. }
  218.  
  219.