我正在寻找一种方法来检查单元格是否包含 Google Apps 脚本和 Google 表格中的文本。
var cell = "Joe, Bob, Tim, John"
//I would want this to execute
if(cell contains "Tim") {
//code
}
最佳答案
最近,SpreadsheetApp
服务中添加了 TextFinder
类,允许您在实时 Range
(或Sheet
甚至是 Spreadsheet
本身)。请参阅documentation更多细节。只需使用 createTextFinder()
将查找器设置在上下文中,并将要查找的文本作为参数即可。
在生成的 TextFinder
实例上调用 findNext()
方法将返回调用它的 Range
或 null
如果什么也没找到。例如:
function findText() {
var sh = getSheet(); //custom function that returns target Sheet;
var rng = sh.getRange(1,1); //change to desired Range boundaries;
//create TextFinder and configure;
var tf = rng.createTextFinder('textToFind');
tf.matchCase(false); //{Boolean} -> match target text's case or not;
tf.matchEntireCell(false); //{Boolean} -> check the whole Range or within;
tf.ignoreDiacritics(true); //{Boolean} -> ignore diacretic signs during match;
tf.matchFormulaText(false); //{Boolean} -> search in formulas (if any) or values;
//invoke search;
var res = tf.findNext();
//do something with result;
if(res!==null) {
var vals = res.getValues();
Logger.log(vals);
}
}
关于javascript - 有没有办法检查单元格内的单词?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56315663/