2010-12-07 9 views
1

私はランダムな位置で別の文字列にテキストを挿入する必要があるActionScriptプログラムを構築しています。
文字列が挿入されるテキストがあります。私は配列として挿入される文字列を持っています。
しかし、この配列の要素をランダムな位置にある他の文字列に挿入する方法についてはわかりません。
ご協力いただければ幸いです。ActionScript:ランダムな場所で文字列にテキストを挿入しますか?

答えて

0
while(arrayOftringsToInsert.length) 
{ 
    var randomPosition:uint = Math.round(Math.random() * text.length) 
    text = text.slice(0, randomPosition) + arrayOftringsToInsert.pop() + text.slice(randomPosition + 1, text.length) 
} 
+0

それはほとんど働いていました。それは完全な単語を分割する単語を挿入しました。私が本当に欲しかったのは、完全な単語の前後に挿入することでした。あなたの何人かがそれを助けることができるならそれはすばらしいでしょう。それでもあなたに感謝しますuser531694 – toad

+0

技術的に、これはあなたが提供した機能の説明を正確に満たしています。ワード境界に挿入するには、スペース文字のテキスト文字列を分割し、ランダムな値を挿入して配列を文字列に戻して、ランダムなインデックス値をターゲットテキスト配列に生成するようにrandomPosition制約を変更する必要があります。このAPIを使用する:http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/String.html#split%28%29 – user531694

1

変更した質問への答え:

var stringsToInsert:Array = ["abc", "def", "ghi"]; 
var text:String = "here is some text" 

var textArr:Array = text.split(" "); 

while(stringsToInsert.length) 
{ 
    var randomPosition:uint = Math.round(Math.random() * textArr.length); 
    textArr.splice(randomPosition, 0, stringsToInsert.pop()); 
} 
text = textArr.join(" "); 
trace(text); 
関連する問題