因此,我目前正在开发一个使用应用程序脚本api格式化Google表格上某些输入单元格的功能。

现在,我将从几个单元格中获取输入,并对其进行略微格式化以符合手动生成的系统。

一个单元格是学校名称单元格。有时这些名称往往很长,我在javascript方面不是很资深,但是现在我从一个单元格中获取一个参数,我将如何定义该参数的变量,以便它只接受单元格中的所有内容,直到第二个空格。

例如:
A#单元:填空高中联盟

输出:填空高

/**
*Generates a Trip Key
*
*@param DateColumn Date
*@param SchoolColumn School name
*@param LocationColumn Location
*@customfunction
*/
function GENERATEKEY(DateColumn, SchoolColumn, LocationColumn) {
  var DateConver = Utilities.formatDate(DateColumn, SpreadsheetApp.getActive().getSpreadsheetTimeZone(), "MM.dd.yyyy");
  var SchoolClean = SchoolColumn.replace(

  return DateConver + " " + SchoolColumn + " " + "@" + " " +  LocationColumn
}

最佳答案

使用正则表达式将所有内容匹配到第二个空格。

var SchoolClean = SchoolColumn.replace(/^(\S*\s*\S*).*/, '$1');


\S匹配非空白字符,\s匹配空白。因此,\S*\s*\S*匹配非空格,后跟空格,再跟非空格。然后.*匹配其余字符串。替换为$1,这正是括号内的部分所匹配的。

07-24 17:12