清除任何特殊字符的单元格,多次出现
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("")}]+
。
参考:
我有一个在其他地方没有发现的有趣问题。在 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”列的值。请根据您的情况修改列字母。
- 例如,如果要将
...
转换为[${search.map(e => "\" + e).join("")}]
修改为[${search.map(e => "\" + e).join("")}]+
。