Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/google-apps-script/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何使用Google脚本替换字符串中的所有字符?_Javascript_Google Apps Script_Replace - Fatal编程技术网

Javascript 如何使用Google脚本替换字符串中的所有字符?

Javascript 如何使用Google脚本替换字符串中的所有字符?,javascript,google-apps-script,replace,Javascript,Google Apps Script,Replace,我正在尝试使用以下代码替换Google工作表单元格中的特定字符: var sValue = data[0][0]; sValue = sValue .replace(" ", ""); var cell = sheet.getRange(1, 1); cell.setValue(sValue); 如果我的文本是“这是一个测试”,我想要“这是一个测试”,但结果是“这是一个测试” 只替换第一个字符。我怎样才能全部替换它们? 您想通过将“替换为”,将这是一个测试转换为这是一个测试。

我正在尝试使用以下代码替换Google工作表单元格中的特定字符:

  var sValue = data[0][0];
  sValue = sValue .replace(" ", "");
  var cell = sheet.getRange(1, 1); 
  cell.setValue(sValue);
如果我的文本是“这是一个测试”,我想要“这是一个测试”,但结果是“这是一个测试” 只替换第一个字符。我怎样才能全部替换它们?

  • 您想通过将
    替换为
    ,将
    这是一个测试转换为
    这是一个测试。
    
    • 这是一个测试,
      的值在谷歌电子表格的一个单元格中
  • 您希望使用谷歌应用程序脚本实现这一点
在这里,我建议使用TextFinder解决您的问题,原因如下

  • 在您的情况下,使用谷歌电子表格
  • 在脚本中,值由
    getValues
    检索,并由
    setValue
    放置。使用TextFinder时,搜索和替换过程在内部服务器中运行。这样可以降低成本
  • TextFinder可以通过简单的脚本用于单元格、区域、工作表和电子表格中的所有工作表
  • 示例脚本: 从脚本中,它假设单元格“A1”中的
    这是一个测试的值被转换为
    这是一个测试的情况

    const sheetName = "Sheet1";
    SpreadsheetApp
      .getActiveSpreadsheet()
      .getSheetByName(sheetName)
      .getRange(1, 1)
      .createTextFinder(" ")
      .replaceAllWith("");
    
    注:
    • 例如,在上面的脚本中,当
      getRange(1,1)
      SpreadsheetApp.getActiveSpreadsheet().getSheetByName(sheetName.createTextFinder(“”)一样被删除时,“工作表中所有单元格中的
      “将替换为
    参考:

    这是否回答了您的问题?对于OPs案例,有63个答案,您推荐哪一个答案?@Cooper这里最快、最简单的函数C:基于正则表达式的函数。