Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/472.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在GoogleApps脚本-JavaScript中检查工作表名称/字符串是否同时包含字母和数字_Javascript_Regex_Google Apps Script_Google Sheets - Fatal编程技术网

如何在GoogleApps脚本-JavaScript中检查工作表名称/字符串是否同时包含字母和数字

如何在GoogleApps脚本-JavaScript中检查工作表名称/字符串是否同时包含字母和数字,javascript,regex,google-apps-script,google-sheets,Javascript,Regex,Google Apps Script,Google Sheets,我有一个用于检查工作表名称的应用程序脚本代码。在我的项目中有两种类型的图纸名称—(i)只有字母表(如master)和(ii)字母表和数字表(PHY4125)。代码将选中第二个选项。我的情况经常不起作用!有没有其他方法可以完成同样的任务 我的代码: function autoConvert(e) { var ss=e.source; var sh=ss.getActiveSheet(); var key=sh.getName();

我有一个用于检查工作表名称的应用程序脚本代码。在我的项目中有两种类型的图纸名称—(i)只有字母表(如master)和(ii)字母表和数字表(PHY4125)。代码将选中第二个选项。我的情况经常不起作用!有没有其他方法可以完成同样的任务

我的代码:

    function autoConvert(e) {    
        var ss=e.source;
        var sh=ss.getActiveSheet();
        var key=sh.getName();
        var lastRow=sh.getLastRow();
              
        **if (key.indexOf("0")>-1 || key.indexOf("1")>-1 || key.indexOf("2")>-1 || key.indexOf("3")>-1 || key.indexOf("4")>-1 
          || key.indexOf("5")>-1 || key.indexOf("6")>-1 || key.indexOf("7")>-1 || key.indexOf("8")>-1 || key.indexOf("9")>-1){** 

        //Body of the code block

       }
  }
说明: 正则表达式:

/^(?=.[A-Za-z])(?=.[0-9])[A-Za-z0-9]+$/

将检查字符串
是否同时包含字母数字

因此,这句话:

if(key.match(/^(?=.[A-Za-z])(?=.[0-9])[A-Za-z0-9]+$/)

对于
AB23423
AB23423
23233ab
24443AB
或任何组合
As23Abc
等情况,将评估为
true


解决方案: 说明: 正则表达式:

/^(?=.[A-Za-z])(?=.[0-9])[A-Za-z0-9]+$/

将检查字符串
是否同时包含字母数字

因此,这句话:

if(key.match(/^(?=.[A-Za-z])(?=.[0-9])[A-Za-z0-9]+$/)

对于
AB23423
AB23423
23233ab
24443AB
或任何组合
As23Abc
等情况,将评估为
true


解决方案:
主题代码可以是phy4125。它可以用大写或小写字母。所以请修改正则表达式。在我的项目中,图纸名称的唯一区别是,一种类型只包含字母,另一种类型包含字母加数字。在这两种情况下,字母可能是大写或小写。请查看我最近发布的帖子,主题代码可能是phy4125。它可以用大写或小写字母。所以请修改正则表达式。在我的项目中,图纸名称的唯一区别是,一种类型只包含字母,另一种类型包含字母加数字。在这两种情况下,字母表可能是大写或小写。请查看我最近在
 function autoConvert(e) {    
        var ss=e.source;
        var sh=ss.getActiveSheet();
        var key=sh.getName();
        var lastRow=sh.getLastRow();

       if(key.match(/^(?=.*[A-Za-z])(?=.*[0-9])[A-Za-z0-9]+$/)){
  
    //Body of the code block
  
  }
     
  }