Prototype: removeTags [Flash 8]
| Beiträge: 170 Wohnort: Bei Karlsruhe Registriert: Nov 2002
| 30.04.2004, 17:17
Entfernt alle Tags aus einem String (XML-Variante)
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 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 | //FLASH5-VERSION
string.prototype.removeTags=function()
{
var stringAsXML=new XML(this);
var ACTUALnode=stringAsXML.firstChild;
var DOstepNum=0;
var DONEstep;
var DONEsearching=false;
var ENDsearching=false;
var RETURNstringWithoutTags;
if(ACTUALnode!=null)
{
while(ENDsearching!=true)
{
if(ACTUALnode.nodeName==null)
{
if(ACTUALnode.nodeValue!=null)
{ RETURNstringWithoutTags+=ACTUALnode.nodeValue;
}
}
if(DONEsearching==true)
{
ENDsearching=true;
break;
}
DONEstep=false;
if(DOstepNum==0)
{
if(ACTUALnode.hasChildNodes()==true)
{
ACTUALnode=ACTUALnode.firstChild;
DONEstep=true;
}else
{
DONEstep=false;
}
if(ACTUALnode.firstChild.hasChildNodes)
{
DOstepNum=0;
}else
{
DOstepNum=1;
}
}
if((DOstepNum==1) && (DONEstep!=true))
{
if(ACTUALnode.nextSibling)
{
ACTUALnode=ACTUALnode.nextSibling;
DOstepNum=0;
DONEstep=true;
}else
{
while((!ACTUALnode.nextSibling) && (ACTUALnode.parentNode))
{
ACTUALnode=ACTUALnode.parentNode;
}
if(ACTUALnode.nextSibling)
{
ACTUALnode=ACTUALnode.nextSibling;
DOstepNum=0;
DONEstep=true;
}else
{
DONEsearching=true;
}
}
}
}
}
return RETURNstringWithoutTags;
}
|
Beispiel Aufruf:
ActionScript:1 2 3 4 5 6 7 8 9 10 11 12 | /*
Diese Variante mit XML ist (nach meinen Tests) fast 10mal schneller als eine Variante mit indexOf("<") etc., was wahrscheinlich daran liegt, dass stringfunktionen sehr langsam sind (also möglichst meiden!) und ich hier xml benutz habe.
DAS SCRIPT IST FÜR FLASH5 AUSGELEGT UND GETESTET
->ich kenne die nachfolgerversionen nicht, vielleicht kanns jemand mal umschreiben
*/
//teststring von sebastian
testString="<b>Flashhilfe.de</b><p> <br>::</p>:<br> <font color=\"green\">Flash-Community</font> :::";
testStringWithoutTags=testString.removeTags();
trace("String mit Tags: "+testString+"\nString ohne Tags: "+testStringWithoutTags);
|
| |
| Ähnliche Beiträge zum Thema | |
|
Flashhilfe.de Flash Platform Tipps & Tutorials Flash Platform Andere Programmiersprachen Jobangebote Diskussionen
Flashhilfe News
Regeln & Bedingungen
|