こんにちはだから、array1(2x2)のすべての単語をarrayChoose(3x1)の単語にマッチさせ、arrayReplacewith(3x1)の単語をJavascriptを使って置き換えることです。私はマッピングや置き換えを含むいくつかの方法を試しましたが、私は周りを回り、進行する方法がわかりません。配列の要素の文字列を別の配列の要素の文字列に置き換えるにはどうすればよいですか?
編集:コンテキストを追加するだけで、csvファイルからすべての配列をロードしています。 また、配列の選択と置換は、必ずしも同じ長さである必要はありません。
edit2:問題は直面しています。第2に、すべての要素の文字列を置き換えるソリューションは文字列の最初のインスタンスを置き換えるだけで、グローバル置換を実装することはできませんでした。
ご協力いただければ幸いです。ありがとう。
var array1 = [["today is the day","or maybe it's tomorrow"],["who knows really","it's just where we are"]];
var arrayChoose = ["today", "tomorrow", "just"];
var arrayReplacewith = ["monday", "tuesday", "not"];
ソリューションその答えを貢献したみんなに感謝し 。私は@ mohamed-ibrahimによって提供されたものを利用しました。
var arrayIncorrect = [ [ 'Trump has ordered', 'flight attendants to stop' ],
[ 'shorter people to ', 'restrict tourism.' ],
[ 'Now all they ', 'need is a wall.' ] ];
var dataChoose = [ [ 'Trump' ],
[ 'stop' ],
[ 'people' ],
[ 'restrict' ],
[ 'wall' ] ];
var dataReplace = [ [ 'Kim Jong-un' ],
[ 'wear' ],
[ 'skirts' ],
[ 'boost' ],
[ 'airplane' ] ];
arrayCorrect=
arrayIncorrect.map(function(array1){
return array1.map(function(ele){
dataChoose.forEach(function(choose){
ele = ele.replace(new RegExp(choose, 'g'), dataReplace[dataChoose.indexOf(choose)]) ;
})
return ele;
})
});
console.log(arrayCorrect)
ご質問がある場合は私に知らせてください(アレイが、CSVファイルからロードされ、完全な例えばhereを参照)...以下のソリューションを参照してください。
あなたは 'array1'でいくつかのコンマを逃しています。ポストされたコードは構文エラーを生成します。 – Pointy
ええ、2x2アレイにする必要がある場合は、 var array1 = [["今日はその日です"私たちです"]]; オブジェクトを追加する: var array1 = [{obj1: "今日はその日です"、obj2: "それは明日です"}、{obj1: "本当に知っている人"、obj2: "それはちょうど私たちの所です"}] ; – tcoulson
申し訳ありませんが、コードを修正しました。ありがとうございます。 – TopGangMember