Flashhilfe.de - Flash Community

Prototype: String.prototype.pad [Flash 8]

 


AntwortenRegistrieren Seite1  

BackToDos#1
Benutzerbild von BackToDos
Beiträge: 571
Wohnort: LE
Registriert: Apr 2006

11.04.2007, 17:12

String auffüllen

Prototype:
ActionScript:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
/**
* Diese Methode füllt den String bis zu einer gewissen Größe auf, mit übergebenen Argument padString.
* Es kann von links, von rechts und beidseitig gepaddet werden.
* Das Verhalten ist dem von PHP's str_pad gleich ...
* allerdings wird bei kürzeren Ziellängen der String gekürzt
*/

String.PAD_LEFT = 0;
String.PAD_RIGHT = 1;
String.PAD_BOTH = 2;
String.prototype.pad = function (padString:String,newLength:Number,padType:Number):String {
   if (padType == String.PAD_BOTH) {
      var left:Number = Math.floor((this.length+newLength)/2);
      return this.pad(padString,left,String.PAD_LEFT).pad(padString,newLength,String.PAD_RIGHT);
   }
   if (!padType) padType = 0;
   var dl:Number = Math.floor((newLength - this.length)/padString.length+0.1);
   var rl:Number = newLength - this.length -dl*padString.length;
   if ((dl>0) || ((rl>0) && (dl == 0))) {               
      var rest:String = padString.substr(0,rl);
      var a:Array = dl.toString(2).split("");
      a.reverse();
      var chunk:String = padString;
      var s:String = "";
      for (var i:Number = 0;i<a.length;i++) {
         if (a[i]=="1") s+= chunk;
         chunk+=chunk;
      }
      s+=rest;
      switch (padType) {
         case 0:s += this;break;
         case 1:s = this+s;break;
      }
      return s;
   }
   else return this.slice(0,newLength);//hier 'return this;', falls Kürzen nicht erwünscht
}


Beispiel Aufruf:
ActionScript:
1
2
3
4
5
6
7
8
9
10
var s:String = new String("Alien");
trace(s.pad("-=:.",13,String.PAD_LEFT));
trace(s.pad("-=:.",13,String.PAD_BOTH));
trace(s.pad("-=:.",13,String.PAD_RIGHT));
trace(s.pad("-=:.",3,String.PAD_RIGHT));
/*output:
-=:.-=:.Alien
-=:.Alien-=:.
Alien-=:.-=:.
Ali*/
<

greetz
back2dos
Schlagwörter: prototype, String
Werbung
Beiträge: 0
Registriert: Feb 2016



AntwortenRegistrieren Seite1  

Schnellantwort

Du musst registriert sein, um diese Funktion nutzen zu können.

 
Ähnliche Beiträge zum Thema
Partner Webseiten: art-and-law.de  Mediengestalter.info   php-resource.de   phpforum.de   phpwelt.de   Pixelio.de   Scubacube.de  
Haftungsausschluss   Datenschutzerklärung   Hier Werben   Impressum
© 1999-2019 Sebastian Wichmann - Flashhilfe.de