如果单元格中的数据与字符串-数字-数字格式不匹配,我想跳过代码迭代。例如,所需的格式是 Apple-34-56。如果我定义的数组具有 Apple-Grape-23 等格式,或与所需格式相反的任何其他变体,则它应该跳到下一次迭代。
function populateData (sheet1, sheet2) {
var dataRange = sheet1.getRange("A:A").getValues();
for (var i = 0; dataRange.length; i++) {
if (dataRange !== string-number-number) {
continue;
}
}
}
这是设置条件的正确方法吗?
您要求的是一个正则表达式来匹配您所需的约束。
即如果您的意思是“(任意长度的单词)-(任意长度的数字)-(任意长度的数字)”,您的 if 语句将变为:
if (! dataRange[i].match(/^\w+-\d+-\d+$/)) {...};
// (Notice the `[i]` I guess you missed 😉)
话虽如此,您甚至可以避免使用 continue 语句,让您的目标输入更加清晰:
const re_fmt = /^\w+-\d+-\d+$/;
function populateData (sheet1, sheet2) {
var dataRange = sheet1.getRange("A:A").getValues();
for (
let i = 0;
dataRange.length;
i++
) if (
dataRange[i].match(re_fmt)
) {
/* Your code... */
}
}