google-apps-script - 如何计算Google表格中单元格中出现多次的单词每次出现之间的字符数?
问题描述
我正在扩展和澄清我之前在这里提出的问题:
如何返回单元格中每出现两次单词之间的字符数?
并跨越一个范围/ 1列单元格中的2个或更多单元格?
例如:
单元格 A2 包含 4 次单词“apple”,每次由 x 个字符分隔。
如何返回Sheet6列 B、C、D 和 E 中显示的那些中间数字?
如何用脚本做到这一点?理想情况下,对于 A2:A 的范围,设置范围 B2:B、C2:C、D2:D、E2:E 和 F2:F 中每个相应单元格的相对字符数?
以这个字符串为例:
在 A2 中:
0 apple one apple 2 apple three apple four.
返回的所需结果将设置为:
在 B2 中:2(对于 2 字符串“0(-)”的字符)
在 C2 中:5(对于 5 个字符串“(-)one(-)”的字符)
在 D2 中:3(对于 3 个字符串“(-)2(-)”的字符)
在 E2 中:7(对于 7 字符串“(-)three(-)”的字符)
在 F2 中:6(对于 6 个字符串“(-)four.”的字符,其中“.”作为单元格中的最后一个字符出现,作为关闭计数的标准。)
还有另一个例子:
考虑跨 2 个单元格 A3 和 A4 的字符串:
A3=zero apple one apple 2
A4=apple three apple four.
在 B3 中:5(对于字符串“zero(-)”的 5 个字符)
在 C3 中:5(对于字符串“(-)one(-)”的 5 个字符)
在 D4 中:3(对于 3 字符串“(-)2(-)”的字符。在 D4 中,因为下一个“苹果”在下一行,所以计数也设置为相对下一行)。
在 E4 中:7(对于 7 字符串“(-)three(-)”的字符)
在 F4 中:6(对于 6 个字符串“(-)four.”的字符,其中“.”作为单元格中的最后一个字符出现作为关闭计数的标准。)
到目前为止,我已经将@Jescanellas以前的脚本改编为以下内容
function numcharsbetweenocc1and2ofApple() {
var sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Sheet2");
var your_string = sheet.getRange("B2").getValues().toString();
var appletree = [];
var apple_length = "apple".length;
var char_counter = 0;
while ("B2" !== "") {
var apple = your_string.indexOf("apple", char_counter) + apple_length;
appletree.push(apple);
char_counter = char_counter + apple;
var result = apple;
sheet.getRange("D2").setValue(result);
if (char_counter >= your_string.length)
break;
};
};
但这会返回直到最后一次出现“apple”的字符数。.getRange("B2")
并且仅对于一个当前单元格,当我将to.getRange("B2:B")
和sheet.getRange("D2:D").setValue(result);
to更改为时,它不适用于整列sheet.getRange("D2:D").setValue(result);
。
表 4
这里又是预期的结果:
第六张在这里
感谢您的意见和帮助!
解决方案
推荐阅读
- python - 您可以导出创建的 python conda 环境供其他人在他们的机器上激活吗?
- c - Petsc 代码在 2990WX 平台上没有并行加速
- jquery - 如何解决“jQuery 需要一个带有文档的窗口”错误?
- php - 在php中插入具有随机名称的图像源名称
- camunda - 如何使用cli将历史级别更改为camunda中的活动
- javascript - Leaflet GeoJSON 根据区域的位置(经度和纬度)显示某些多边形区域
- ag-grid-angular - 使用 Ivy 的 Angular 8 中的 AG Grid 模块导入错误
- scala - Spark Streaming 延迟写入 Kafka - x 分钟后
- azure - 应用服务的响应时间指标到底是什么
- f# - 在不需要函数的上下文中使用 F# 扩展