javascript - 如何使用谷歌脚本替换字符串中的所有字符?
问题描述
我正在尝试使用以下代码替换 Google 表格单元格中的特定字符:
var sValue = data[0][0];
sValue = sValue .replace(" ", "");
var cell = sheet.getRange(1, 1);
cell.setValue(sValue);
如果我的文本是“这是一个测试”,我想要“thisisatest”但结果是“这是一个测试”只有第一个字符被替换。我怎样才能全部替换它们?
解决方案
- 您想通过替换to来转换
this is a test
为。thisisatest
" "
""
- 的值
this is a test
位于 Google 电子表格的一个单元格中。
- 的值
- 您想使用 Google Apps 脚本实现此目的。
在这里,由于以下原因,我想针对您的情况建议使用 TextFinder。
- 在您的情况下,使用 Google 电子表格。
- 在您的脚本中,这些值由 检索
getValues
和放置setValue
。使用 TextFinder 时,搜索和替换过程在内部服务器中运行。由此,可以降低成本。 - TextFinder 可以通过简单的脚本用于电子表格中的单元格、范围、工作表和所有工作表。
示例脚本:
从您的脚本中,它假设this is a test
单元格“A1”中的值转换为thisisatest
.
const sheetName = "Sheet1";
SpreadsheetApp
.getActiveSpreadsheet()
.getSheetByName(sheetName)
.getRange(1, 1)
.createTextFinder(" ")
.replaceAllWith("");
笔记:
- 例如,在上面的脚本中,当
getRange(1, 1)
像 一样被删除时SpreadsheetApp.getActiveSpreadsheet().getSheetByName(sheetName).createTextFinder(" ").replaceAllWith("");
," "
工作表中的所有单元格都被替换为""
。
参考:
推荐阅读
- c++ - 在实用方法中将 std::string 转换为 STRSAFE_LPCWSTR
- java - 如何使用 HashSet 迭代 ConcurrentHashMap
作为值并在遍历地图时从 HashSet 中删除一个字符串? - r - 如何在同一方面将多个 ggplot 图与不同的数据框结合起来?
- javascript - 在反应中的两个外部css文件之间切换
- amazon-web-services - 实时加密现有 EBS 卷
- javascript - 不返回任何base64解码
- google-apps-script - 使用 Google 脚本将自定义 CSV 文件替换为 Google 驱动器中的另一个 CSV 文件
- python - Python - 如何为用户输入创建删除函数?
- python - 用于目录的 StringIO:如何在 Python 中创建内存目录
- html - 带右箭头的 CSS 按钮