因此,我目前正在开发一个使用应用程序脚本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
,这正是括号内的部分所匹配的。