Apps 脚本如何将单元格格式化为正确的文本(案例)
Apps script how to format a cell to Proper Text (Case)
我的 sheet 收到了一份表格,有时我的客户会以小写或大写形式输入文本,并带有换行符
我有这段代码可以将单元格设为大写并删除换行符
var val = responses.getRange( i + 1 , 13).getValue();
val = val.replace(/\n/g,", ");
responses.getRange( i + 1 , 13).setValue(val.toUpperCase());
我需要的是将该单元格设置为正确的大小写,而不是大写
例如,如果文本是 "hello how ARE YOU" 我想转换为 "Hello How Are You" 或 "Hello how are you"
我一直在寻找这个,但找不到解决方案
有什么帮助吗?
谢谢
- 您想使用 Google Apps 脚本将
hello how ARE YOU
修改为 Hello How Are You
和 Hello how are you
。
如果我的理解是正确的,这个修改怎么样?请将此视为几个答案之一。
本次修改流程如下
首先修改为小写
- 在模式 1 中,每个单词的第一个字符修改为大写。
- 在模式2中,value的第一个字符修改为大写。
示例脚本:
var val = "hello how ARE YOU";
var pattern1 = val.toLowerCase().replace(/\b[a-z]/ig, function(match) {return match.toUpperCase()});
var pattern2 = val.toLowerCase().replace(/^[a-z]/i, function(match) {return match.toUpperCase()});
console.log(pattern1) // Hello How Are You
console.log(pattern2) // Hello how are you
参考:
如果需要其他图案,可以提供吗?
这是我为了在应用程序脚本中为其他人使用 PROPER 函数所做的。
首先,我使用名称(在本例中为客户)将函数放入单元格中。然后我使用 getDisplayValue 获取实际文本。然后将其写回单元格。
customer = sht.getRange(row, col).setValue('=PROPER("'+customer+'")').getDisplayValue();
sht.getRange(row, col).setValue(customer);
有点hack/alternative,但可以。
我的 sheet 收到了一份表格,有时我的客户会以小写或大写形式输入文本,并带有换行符
我有这段代码可以将单元格设为大写并删除换行符
var val = responses.getRange( i + 1 , 13).getValue();
val = val.replace(/\n/g,", ");
responses.getRange( i + 1 , 13).setValue(val.toUpperCase());
我需要的是将该单元格设置为正确的大小写,而不是大写
例如,如果文本是 "hello how ARE YOU" 我想转换为 "Hello How Are You" 或 "Hello how are you"
我一直在寻找这个,但找不到解决方案
有什么帮助吗?
谢谢
- 您想使用 Google Apps 脚本将
hello how ARE YOU
修改为Hello How Are You
和Hello how are you
。
如果我的理解是正确的,这个修改怎么样?请将此视为几个答案之一。
本次修改流程如下
首先修改为小写
- 在模式 1 中,每个单词的第一个字符修改为大写。
- 在模式2中,value的第一个字符修改为大写。
示例脚本:
var val = "hello how ARE YOU";
var pattern1 = val.toLowerCase().replace(/\b[a-z]/ig, function(match) {return match.toUpperCase()});
var pattern2 = val.toLowerCase().replace(/^[a-z]/i, function(match) {return match.toUpperCase()});
console.log(pattern1) // Hello How Are You
console.log(pattern2) // Hello how are you
参考:
如果需要其他图案,可以提供吗?
这是我为了在应用程序脚本中为其他人使用 PROPER 函数所做的。
首先,我使用名称(在本例中为客户)将函数放入单元格中。然后我使用 getDisplayValue 获取实际文本。然后将其写回单元格。
customer = sht.getRange(row, col).setValue('=PROPER("'+customer+'")').getDisplayValue();
sht.getRange(row, col).setValue(customer);
有点hack/alternative,但可以。