You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Google Apps Script中实现类似Google Sheets LEFT()的字符提取功能

Google Apps Script 截取字符串解决方案

你可以直接用JavaScript原生的字符串方法实现和Google Sheets LEFT() / RIGHT() 等价的效果,针对你去掉末尾7位字符的需求,有两种常用实现方式:

方案1:使用slice()方法(最推荐)

slice()支持传入正负索引,负索引代表从字符串末尾开始计数,直接截取到倒数第7位之前的内容即可:

// 单字符串用法示例
const str1 = "ADGGGGGDH--12/01";
const result1 = str1.slice(0, -7); // 输出 ADGGGGGDH

const str2 = "VNS-VNSBCAAAMVNC--02/07";
const result2 = str2.slice(0, -7); // 输出 VNS-VNSBCAAAMVNC

如果要封装成和Google Sheets用法一致的自定义LEFT函数,可以这么写:

function LEFT(str, numChars) {
  return str.slice(0, numChars);
}
// 对应你的需求,也可以直接调用LEFT(str, str.length -7)实现同等效果

方案2:使用substring()方法

和slice()逻辑类似,只是不支持负索引,需要先计算字符串总长度再截取:

const str = "ADGGGGGDH--12/01";
const result = str.substring(0, str.length -7);

批量处理Google Sheets数据示例

如果你需要直接处理表格中选中范围的所有单元格内容,可以直接用这段完整脚本:

function removeLast7Chars() {
  const sheet = SpreadsheetApp.getActiveSheet();
  const range = sheet.getActiveRange();
  const values = range.getValues();
  
  const processedValues = values.map(row => {
    return row.map(cell => {
      // 仅处理长度大于等于7的字符串类型内容
      if (typeof cell === 'string' && cell.length >= 7) {
        return cell.slice(0, -7);
      }
      return cell;
    })
  });
  
  range.setValues(processedValues);
}

运行函数前先选中你需要处理的单元格范围,运行后会自动批量替换内容。

内容的提问来源于stack exchange,提问作者Leti

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.13 22:36:03