2016-12-10 3 views
1

In AS3 Ich konnte String.replace wie folgt verwenden:Wie String.Replace (//*.*?*// sg, "")

JSON.parse(String(new JSON_CONTROLLERS()).replace(/\/\*.*?\*\//sg, "")); 

Gibt es ein Äquivalent Weg um das in Haxe/OpenFL zu machen?

Wenn nicht, was sind meine Optionen?

Für jeden, der sehen will, was die Ein- und Ausgabe in AS3 würde:
Input: http://pastebin.com/raw/B0LD2gyg (Inhalt controllers.json)
Ausgang: diese http://pastebin.com/raw/qJgCLz9f

Der nächstgelegene ich bekam haben, ist:

Die Anwendung zeigt nur einen schwarzen Bildschirm, ohne Fehler (FPS wird immer noch aktualisiert und korrekt angezeigt, sonst nichts, also weiß ich, dass es zumindest nicht abgestürzt ist). Ich hatte gehofft, dass das funktionieren würde, dann StringTools.replace() mehrmals aufrufen, bis ich alle Zeichen ausgeschnitten habe.

Hinweis: Die Erwähnungen von JSON ist in Bezug auf mein Endziel, nicht genau die Ausgabe des Themas, verließ ich es in Hoffnung, jemand wird versuchen, und meine Ausgabe reproduziert die Eingabe mit ‚Pastebin‘ I bereitgestellt mit JSON Parsen im Hinterkopf.

Wie würde ich auch Text dazwischen entfernen/* Text hier * /?

Extra-Referenz (e):

@:file("assets/controllers.json") 
class JSON_CONTROLLERS extends openfl.utils.ByteArray.ByteArrayData {} 

class Input { ... 

Danke

+0

Wenn die unten stehende Antwort ** funktioniert **, dann bitte als ** gelöst ** markieren (klicken Sie auf das Häkchen neben Antwort). –

Antwort

3

Sieht man bei Haxe Standard Replace?

+0

Ich habe es tatsächlich getan, bevor ich das gepostet habe, aber ich habe die Beispiele nicht verstanden - Was ist ~/oder ~/b? - Ist/g bedeutet alles ersetzen? Warum gibt es einen Schrägstrich vor dem 'g', es erklärt das nicht. Warum $ 1, warum nicht $ 2? Warum gibt es ein "+"? Ich bin nicht auf der Fähigkeitsebene, um diese * kryptischen * Beispiele zu verstehen. –

+0

Versuchen Sie, wie in Ihrem Beispiel zu tun 'var r = ~ /\\\\\\\\\\\ sg;' 'jsonControllers.replace (r," "));' – Andrew

+0

ich nicht scheinen eine Ersetzungsfunktion unter dem Klassentyp String haben; Und für StringTools.replace ist es fehlerhaft mit: sollte String not Ereg sein. –