繁体   English   中英

Google Sheets - Apps Script - 取一个单元格,替换一些文本,将它放在另一个单元格中

[英]Google Sheets - Apps Script - Take a cell, replace some text, place it in another cell

我有一个电影电子表格。 他们有头衔。 一些标题有奇怪的外国字符。 我想要一个只有英文字符版本的标题栏。

我发现了这个: 如何在 keyup 事件中用简单的 az 对应物替换非英文字符

这是: 谷歌脚本 setValue

并想出了这个:

function StripAccents(originalTitle) {
var latin_map = {
  'Á': 'A',
  ...
  'ₓ': 'x'
}
accentedText = SpreadsheetApp.getActiveSheet().getRange(originalTitle).getValue();
return accentedText.replace(/[^A-Za-z0-9]/g, function(x) { return latin_map[x] || x;});
}

但它说它找不到范围。 鉴于 getRange() 似乎想要一个数字而不是单元格引用,这似乎是有道理的,但我不知道如何进行单元格引用,并且这两个链接中的第二个显示它应该可以工作,所以.. 。帮助?

因为 originalTitle 必须是一个字符串,而不是一个范围,即“A1”而不是 A1。 所以,在工作表中,你必须使用如下

=StripAccents("A1")

正确的代码是(无需引号即可使用):

function StripAccents(originalTitle) {
var latin_map = {
  'Á': 'A',
  'É': 'E'
}
  return originalTitle.replace(/[^A-Za-z0-9]/g, function(x) { return latin_map[x] || x;});
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM