Vi č mai capitato, lavorando con stringhe di testo, di dover estrarre solo una parte della stringa ?
Questo articolo presenta come lavorare con i metodi substr() e substring() della Classe String di Actionscript 3.0 .
I due metodi in questione, sono quasi identici.
Entrambi restituiscono un valore stringa in base ai 2 parametri inviati.
Vediamoli...
Il metodo
substr() :
vuole due parametri:
- startIndex: la posizione del primo carattere
- length: il numero di quanti caratteri dobbiamo estrarre dopo startIndex
Il metodo
substring():
- startIndex: la posizione del primo carattere
- endIndex: la posizione dell' ultimo carattere
Per capire bene i 2 metodi, ho creato una Document Class per fare un esempio:
Code:
package
{
import flash.display.MovieClip;
public class Substringa extends MovieClip
{
public function Substringa()
{
init();
}
private function init():void
{
var testo:String='FlepStudio';
trace(testo.substr(0,4));
trace(testo.substring(0,4));
trace('-------------------------');
trace(testo.substr(1,5));
trace(testo.substring(1,5));
trace('-------------------------');
trace(testo.substr(4,6));
trace(testo.substring(4,6));
trace('-------------------------');
}
}
}
L' output generato da Flash č il seguente:
Quote:
Flep
Flep
-------------------------
lepSt
lepS
-------------------------
Studio
St
-------------------------
|
Analizziamo il codice.
ho una variabile di tipo String con il testo
var testo1:String='FlepStudio';
Primo caso
utilizzo substr() passando come valori: zero come prima posizione ( quindi partirą dalla prima lettera ) e 4 come lunghezza
trace(testo1.substr(0,4));
utilizzo substring() passando come valori: zero come prima posizione ( quindi partirą dalla prima lettera ) e 4 come ultima posizione
trace(testo1.substring(0,4));
Secondo caso
utilizzo substr() passando come valori: 1 come prima posizione ( quindi partirą dalla seconda lettera ) e 5 come lunghezza ( si muoverą di 5 posizioni dopo la seconda lettera )
trace(testo2.substr(1,5));
utilizzo substring() passando come valori: 1 come prima posizione ( quindi partirą dalla seconda lettera ) e 5 come ultima posizione ( si muoverą fino alla posizione 5 )
trace(testo2.substring(1,5));
Terzo caso
utilizzo substr() passando come valori: 4 come prima posizione ( quindi partirą dalla quinta lettera ) e 6 come lunghezza ( si muoverą di 6 posizioni dopo la quinta lettera )
trace(testo.substr(4,6));
utilizzo substring() passando come valori: 4 come prima posizione ( quindi partirą dalla quinta lettera ) e 6 come ultima posizione ( si muoverą fino alla posizione 6 )
trace(testo.substring(4,6));
Stay tuned !