【发布时间】:2018-06-16 20:57:46
【问题描述】:
我正在尝试连接由, 分隔的两列并将结果回发到第三列
我得到:
colA colb concatenated
aa bb ww ww aa bb, ww ww
mm m,
qq ,qq
zz oo zz oo,
,
ss vv zz ss, vv zz
如何删除不需要的分隔符和空格,以便我得到:
colA colb concatenated
aa bb ww ww aa bb, ww ww
mm mm
qq qq
zz oo zz oo
ss vv zz ss, vv zz
如果有帮助,这里有一个包含一些数据的 Google 表格 https://docs.google.com/spreadsheets/d/12Hn9bVy5GmRTVxMcrZ_bdkVSlfrem-Jr4cyev_gg6BE/edit?usp=sharing
谢谢
function ConCat() {
var sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Elements");
var lc = sheet.getLastColumn();
var lr = sheet.getLastRow();
var values = sheet.getRange(2, 1, lr,lc).getValues();
var result = []; //Create a empty array to be filled concatenated elements
//Add items to results
for(var i=0; i<lr; i++){
result[i] = [values[i][0]+", "+values[i][1]];
}
//Post back to column 3 starting on row 2
sheet.getRange(2, 3, lr, 1).setValues(result);
}
【问题讨论】:
-
你不想使用
join(developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/…) 而不是自己实现吗? -
是的,那将是
great,但如何加入两列,而不仅仅是一个列表,当我认为两个单元格都为空时,这仍然会给我留下, -
在下面查看我的答案:诀窍是在调用
join之前删除空字符串。然后[].join(', ')只返回一个空字符串""。 -
@JawguyChooser fencepost 没有标签摘录/wiki。这个标签如何帮助这个问题?
-
@Rubén 我是标签系统的新手,但我认为fencepost 标签指的是计算机科学中的fencepost 问题(en.wiktionary.org/wiki/fencepost_problem)。如果不正确,我们可以删除标签。
标签: javascript arrays google-apps-script google-sheets fencepost