Google apps script 删除包含4个或更多数字的所有行

Google apps script 删除包含4个或更多数字的所有行,google-apps-script,google-sheets,google-sheets-api,Google Apps Script,Google Sheets,Google Sheets Api,我管理公司的电子邮件列表,并希望删除所有包含4个或更多数字的行。我现在在Google Sheets上的脚本删除了带有特定关键字的行(例如“robot”),但我也希望它删除电子邮件中包含4个或更多数字的所有行(例如“robot”)robot1234@email.com"). 这可能吗 以下是当前代码: function removeKeywords() { var sheet = SpreadsheetApp.getActiveSheet(); var rows = sheet.getD

我管理公司的电子邮件列表,并希望删除所有包含4个或更多数字的行。我现在在Google Sheets上的脚本删除了带有特定关键字的行(例如“robot”),但我也希望它删除电子邮件中包含4个或更多数字的所有行(例如“robot”)robot1234@email.com"). 这可能吗

以下是当前代码:

function removeKeywords() {
  var sheet = SpreadsheetApp.getActiveSheet();
  var rows = sheet.getDataRange();
  var numRows = rows.getNumRows();
  var values = rows.getValues();

  var rowsDeleted = 0;
  for (var i = 0; i <= numRows - 1; i++) {

var row = values[i];

if (row[0].toLowerCase().indexOf("robot") > -1) {
  sheet.deleteRow((parseInt(i)+1) - rowsDeleted);
  rowsDeleted++;
}
函数removeKeywords(){
var sheet=SpreadsheetApp.getActiveSheet();
var rows=sheet.getDataRange();
var numRows=rows.getNumRows();
var values=rows.getValues();
var rowsDeleted=0;
对于(变量i=0;i-1){
sheet.deleteRow((parseInt(i)+1)-删除行);
行删除++;
}

使用正则表达式仅返回数字,然后对其进行计数。如果4个或更多,则删除:

function removeKeywords() {
  var sheet = SpreadsheetApp.getActiveSheet();
  var rows = sheet.getDataRange();
  var numRows = rows.getNumRows();
  var values = rows.getValues();
  var rowsDeleted = 0;
  for (var i = 0; i <= numRows - 1; i++) {
    var row = values[i];
  if (row[0].toLowerCase().indexOf("robot") > -1) {
     sheet.deleteRow((parseInt(i)+1) - rowsDeleted);
     rowsDeleted++;
  }
 var str=row[0].replace(/\D/g, '')//extract the numbers
 var len=str.length // determine lenght of number string
 if(len >=4 ){ //if 4 or more numbers delete
   sheet.deleteRow((parseInt(i)+1) - rowsDeleted);
  rowsDeleted++;
}
  }}
函数removeKeywords(){
var sheet=SpreadsheetApp.getActiveSheet();
var rows=sheet.getDataRange();
var numRows=rows.getNumRows();
var values=rows.getValues();
var rowsDeleted=0;
对于(变量i=0;i-1){
sheet.deleteRow((parseInt(i)+1)-删除行);
行删除++;
}
var str=行[0]。替换(/\D/g',)//提取数字
var len=str.length//确定数字字符串的长度
如果(len>=4){//如果4个或更多数字删除
sheet.deleteRow((parseInt(i)+1)-删除行);
行删除++;
}
}}

如果这对您有效,请单击答案左侧的复选标记批准答案。谢谢。我刚刚发布了另一个相关问题。我想知道你是否也能帮我做这件事。