【问题标题】:GetValues as lowercase from Google Apps Script来自 Google Apps 脚本的 GetValues 小写
【发布时间】:2016-01-18 04:54:55
【问题描述】:

我正在编写一个谷歌应用程序脚本,从电子表格中获取值..但由于我需要查看是否与变量匹配,所以我需要确保这些值是小写的。

  var sheet  = SpreadsheetApp.getActiveSpreadsheet();
  var column = sheet.getRange(A:A); 
  var values = column.getValues(); 

然后我想遍历这些值以查看是否有匹配项,如下所示: 行=0;

  while ( values[row] && values[row][0] !== data ) {

     // do something
    row ++;
  }

我的问题是......虽然我可以确保变量“数据”是小写的,但我如何确保 values[row] 和 values[row][0] 也是小写?

【问题讨论】:

    标签: google-apps-script


    【解决方案1】:

    您可以通过检查小写项目来遍历值,

    for (var row in values)
    {
        if(values[row][0].toString().toLowerCase() !== data ) 
        {
             // do something
        }
    }
    

    这是values[row]一个数组,小写是什么意思?

    【讨论】:

      【解决方案2】:

      因此,首先我相信,使用.getRange 的表示法,将采用"A:A" 之类的字符串作为参数来返回包含A 列中所有值的范围。

      • 使用Logger.log()typeof检查返回值的类型。 values 将是一个二维数组,每个子数组包含每个单元格的值。

      • values[row] 将返回一个数组,表示row 索引处的单元格。数组显然不能小写。

      • values[row][0] 将返回单元格中的值。您可以通过将其与空字符串(values[row][0]+"") 连接来将值强制转换为字符串(以确保它始终是字符串),然后您可以应用通常的内置JS toLowerCase() 方法,如下所示:(values[row][0]+"").toLowerCase();

      • 所以(values[row][0]+"").toLowerCase() !== data 应该可以实现你想要的。

      【讨论】:

        【解决方案3】:

        我用这个:)

        function onEdit(spreadsheet) {
          var spreadsheet = SpreadsheetApp.getActive();
          var range = spreadsheet.getRange("F3:F");
          var data  = range.getValues();
        
          for (var row = 0; row < data.length; row++) {
            for (var col = 0; col < data[row].length; col++) {
              data[row][col] = (data[row][col]).toString().replace(/á|à|ã|ä|A/gi, 'a');
              data[row][col] = (data[row][col]).toString().toLowerCase();
           }
          }
          range.setValues(data);
        }
        

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2020-05-08
          • 2019-04-27
          • 2023-03-14
          • 1970-01-01
          • 2018-12-14
          • 1970-01-01
          相关资源
          最近更新 更多