清除任何特殊字符的单元格,多次出现

Cleaning the cell of any special characters, multiple occurences

我有一个在其他地方没有发现的有趣问题。在 VBA/Excel 中我可以做到,但是在切换到 Google/Sheets 之后我迷路了 :-)。 我需要在 Google 表格中使用 Google AppScript 来清除一个单元格中的特殊字符,这些字符是我在另一个 sheet 上定义的列表(一列,但我不知道有多少字符(=行)将在那里列出,列表可能会扩展)。我想用 space 这样我就可以轻松地将清理后的文本拆分成单词。这些字符可以在这个单元格中出现多次。 有任何想法吗?感谢提示!

我相信你的目标如下。

  • 您想使用 Google Apps 脚本将 (e.g. ".", ",", "-", "_", etc.) 转换为 space。
  • 值是一列。

在您的情况下,下面的示例脚本怎么样?

示例脚本:

function myFunction() {
  const search = [".", ",", "-", "_"];
  const replace = " ";

  const sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Sheet1"); // Please set your sheet name.
  sheet.getRange("A1:A" + sheet.getLastRow()).createTextFinder(`[${search.map(e => "\" + e).join("")}]`).useRegularExpression(true).replaceAllWith(replace);
}
  • 在此示例脚本中,转换了“A”列的值。请根据您的情况修改列字母。
  • 例如,如果要将...转换为 ,也就是space,请将[${search.map(e => "\" + e).join("")}]修改为[${search.map(e => "\" + e).join("")}]+

参考: