请您知道如何在Google Spreadsheets或JavaScript中解决以下工作流程吗?
1)我有一个旧网址列表(表格)(每行1个网址)
2)我有一个新网址列表(表格)(每行1个网址)我想与旧的相似网址配对(301重定向)
3)我从URL中选择了一部分字符串,可用于搜索和配对
4)我需要在新网址列表中搜索字符串,如果匹配,我需要复制这个新网址并将其复制并粘贴到旧网址旁边的新列(D)。 / p>
我尝试过谷歌和许多Google Spreadsheets附加组件,但我找不到任何可行的方法。
我有算法的想法,但不知道如何在Google App Script中编写它(并且文档没有帮助)
1)for循环从B列的每一行中选择数据
2)另一个for循环选择F列中的每一行
3)比较,如果步骤1中的数据在F列的任何单元格内(对于步骤2的循环)
4)如果匹配,将单元格从F列复制到D列,在它找到的子字符串旁边
请知道如何使其发挥作用?
感谢您的任何提示。
答案 0 :(得分:1)
function redirectSearch()
{
var ss=SpreadsheetApp.getActiveSpreadsheet();
var sht=ss.getSheetByName('Redirect');
var rng=sht.getRange(2,1,sht.getLastRow(),sht.getLastColumn());
var rngA=rng.getValues();
var substringA=[];
for(var i=0;i<rngA.length;i++)//load the substring Array
{
substringA.push(rngA[i][1]);
}
for(var i=0;i<rngA.length;i++)
{
for(var j=0;j<substringA.length;j++)
{
if(String(rngA[i][3]).indexOf(substringA[j])>-1)//look for substring in all of the new urls
{
rngA[j][2]=rngA[i][3];//if found copy them to column C next to substring
}
}
}
rng.setValues(rngA);//reload results and original data
}