読者です 読者をやめる 読者になる 読者になる
無料で使えるシステムトレードフレームワーク「Jiji」 をリリースしました!

・OANDA Trade APIを利用した、オープンソースのシステムトレードフレームワークです。
・自分だけの取引アルゴリズムで、誰でも、いますぐ、かんたんに、自動取引を開始できます。

ActionScriptで長めの複数行文字列をさくっと作る

ActionScriptで長めの複数行文字列を作るのってメンドウですよね。Rubyみたいにヒアドキュメントとか使えればいいのにー。という時にXMLリテラルが使えます!

// XMLリテラルをヒアドキュメント風に使う!
XML.ignoreWhitespace = false;// デフォルトだとテキストノードの先頭と最後の空白文字が削除されるので設定を変更しておく
stdout.text += <str>
  aaa
  bbb
  ccc
</str>.toString();

実行結果はこちら

  • XMLリテラルで作成したXMLtoString()で文字列化。これで不要なタグが削除されたXMLの文字列表現がGetできるので、そのテキストノードとして複数行文字列を埋め込んでやれば、ヒアドキュメント風に文字列を生成できます。
  • なお、デフォルトだとテキストノードの先頭と最後の空白文字が削除されてしまうので、XML.ignoreWhitespaceをfalseに設定しておきます。
    • static変数なので、使い終わったら戻しておく方が賢明かと。

さらに{}」を利用すれば、文字列中への値の埋め込みもできます!

// 「{}」を利用して文字列への値の埋め込みもできる。
var mii:Object = { name:"mii", age:1 };
stdout.text += <str>
  name : {mii.name}
  age  : {mii.age}
</str>.toString();

実行結果はこちら

若干性能が気になるところだけど、どうなんだろう。 > 今度調べる。