Google apps script 如何使用google应用程序脚本从tex文件(或字符串变量)中删除重复行
我在google drive中有一个文本文件,它是自动生成的,在这个过程中,会创建重复的行。我现在学习如何将内容放入字符串变量 是否可以删除重复的行?我不介意线条的顺序是否改变,或者是否删除了blanc线条Google apps script 如何使用google应用程序脚本从tex文件(或字符串变量)中删除重复行,google-apps-script,Google Apps Script,我在google drive中有一个文本文件,它是自动生成的,在这个过程中,会创建重复的行。我现在学习如何将内容放入字符串变量 是否可以删除重复的行?我不介意线条的顺序是否改变,或者是否删除了blanc线条 您好,经过几次尝试,我得到了这个 function revomeduplicatedlines(string){ var array = string.split('\n'); Logger.log(array); var newarray = []; newarray.
您好,经过几次尝试,我得到了这个
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;
}
函数revomeduplicatedlines(字符串){
var数组=string.split('\n');
Logger.log(数组);
var newarray=[];
push(数组[0]);
对于(变量i=1;i=0){
Logger.log(“找到重复行”);
}
否则{
Logger.log('未找到重复行');
push(数组[i]);
}
}
var newstring=newarray.toString().replace(/,/g,'\n');
返回新闻字符串;
}
它可以改进吗
关于,您可能应该在循环之前对数组进行排序,因为您的脚本只能检测相邻的相等项。(除非您确定所有重复项都将位于相邻行中)您好,您的观察结果似乎不正确。newarray是包含非重复行的数组。在“if(newarray.toString().indexOf(array[i])>=0”中,元素数组[i]根据前面的所有行进行测试,不仅检测到连续的相等行,而且检测到所有这些行……没关系,没问题;)