PHP Blogger

Startseite Schreib mir ne Mail! RSS Abo Webnews

Actionscript string replace

Man kann sich nur wundern - jetzt arbeite ich schon 2 Jahre regelmäßig mit Flash bzw. Actionscript und habe auch schon größere Applikationen und Clients gebaut, aber mir war nie bewusst, das es keine string-replace Funktion gibt…

Über die Schwierigkeit bin ich übrigens gestolpert, als ich Inhalte aus einer XML-Datei in einem Textfeld darstellen wollte. Flash interpretiert den Windowszeilenumbruch \r\n wie \n\n - das kanns ja nicht sein, denn wer will schon Doppelabsätze in diesem Zusammenhang? Also muss \r\n nach \n umgewandelt werden, hier würde sich natürlich eine Replace-Funktion anbieten - wenn es sie denn gäbe…

Aber egal, folgender Einzeiler schafft Abhilfe:

var ergebnis= quelle.split(sucheNach).join(ersetzeDurch);
Teile und genieße
  • MisterWong
  • del.icio.us
  • Technorati
  • Digg
  • Slashdot
  • YahooMyWeb
  • Furl
  • Ma.gnolia
  • Spurl
  • Netscape
  • StumbleUpon
  • MyShare
  • blogmarks

Frank meint dazu:

15. November 2007 um 22:10

Dieser Hack bestätigt mal wieder warum ich von Flash nicht viel halte.
Not macht erfinderisch, aber man merkt halt, dass Actionscipt keine Programmiersprache wie PHP, Java und Co ist. ;-D

master_p meint dazu:

16. November 2007 um 01:18

Also erstmal, PHP ist auch keine Programmiersprache, sondern eine Scriptsprache (bin selbst PHP-Scripter, von daher kein bashing!).

Aber dieser “Einzeiler”, den Du oben beschreibst, der wird auch genauso bei Javascript gemacht. Solltest Du also wieder irgendwann mal eine Funktion vermissen, schau doch vielleicht mal bei Javascript vorbei - vielleicht findest Du die Antwort.

timi meint dazu:

16. November 2007 um 09:01

Naja master_p, stimmt ich könnte es tatsächlich genauso in Javascript umsetzen - aber warum? JS bietet mir ja direkt eine replace-Funktion für Strings an (Sogar mit RegEx Unterstützung). Die Ähnlichkeit der beiden Sprachen ist übrigens durch den ECMA-Standard bedingt, auf dem beide Sprachen basieren…

Und @Frank: Flash an sich ist sicher nicht der Reisser, aber Actionscript ab 2.0 hats objektorientiert in sich. Da gehen Dinge, die Dir PHP bislang nicht bietet wie Mehrfach-Vererbung und Interfaces.

PS: Javascript hat auch mal ganz grottig angefangen ;)

Dirk meint dazu:

19. Dezember 2007 um 12:57

Eine string-replace Funktion gibt es in Flash schon, zumindest in ActionScript 3.0. Allerdings muss man dafür Suchmuster verwenden. Da ist dein Einzeiler schon sehr viel komfortabler und funktioniert wunderbar. Danke für den Tipp.

timi meint dazu:

19. Dezember 2007 um 13:18

Wer Flash-Anis für Webseiten produziert, exportiert meist in Flash 6 - und da gabs noch AS 3.0 ;) Aber trotzdem Dankeschön für den Hinweis…

RSS für Kommentare zu diesem Artikel · TrackBack URI

Schreib Deine Meinung