2017-01-12 8 views
0

Googleドライブにテキストファイルがあり、自動的に生成され、その過程で重複した行が作成されます。私は今どのように文字列変数にコンテンツを取得する。Googleのアプリケーションスクリプトを使用してtexファイル(または文字列変数)から重複する行を削除する方法

重複する行を削除することはできますか?行の順序が変更された場合、またはブランラインが消去されている場合、私はそれが改善できる私がこの

function revomeduplicatedlines(string){ 
    var array = string.split('\n'); 
    Logger.log(array); 
    var newarray = []; 
    newarray.push(array[0]); 

    for (var i = 1; i<array.length; i++){ 
    if (newarray.toString().indexOf(array[i])>=0){ 
     Logger.log('duplicate line found'); 
     }  
     else { 
     Logger.log('not duplicate line found'); 
     newarray.push(array[i]); 
     } 
    }  
    var newstring = newarray.toString().replace(/,/g, '\n'); 
    return newstring; 
    } 

を持って、...

よろしく、いくつかの試みの後

答えて

1

を気にしません?

よろしく、

+0

あなたのスクリプトは連続した等しいアイテムだけを検出できるので、ループする前に配列を並べ替えるべきです。 (すべての重複が連続した行にあることがわかっていない限り) –

+0

こんにちは、あなたの観測は正しくないようです。 newarrayは重複しない行を含む配列です。 "if(newArray.toString()。indexOf(array [i])> = 0)"では、配列array [i]はすべての前の行に対してテストされ、連続していない行を検出します。 –

+0

おっと、そうです、私はスクリプトを誤解しました。ごめんなさい。 –

関連する問題