如何使用正则表达式验证Json文件扩展名

时间:2017-04-27 23:47:18

标签: javascript json extjs

我在EXTJS中有一个文件上传组件,我用来从计算机上传文件。但是我想将它限制为仅JSOn文件,因此除JSON文件扩展名之外的任何内容都应该抛出一些错误。现在使用此功能,我可以获取我单击导入的文件名:

    new Ext.Container({
                       height: 100,
                       width: 500,
                       items: [
                          this.fileUpload=  new Comp.form.FileUpload({

                            listeners: {
                                fileUpload: function(filename){
                                  //where filename= "abc.pdf"
                                 //pseudo code below for validation
                                  if (filename===.json) {
                                    console.log("uploaded");
                                    } else {
                                   console.log(“eror”)
                                 }
                                }
                            }
                          })
                       ],
                       scope: this
                     })

如何验证.json文件扩展名,是否可以通过Regex?谢谢!

1 个答案:

答案 0 :(得分:1)

您可以使用带有正则表达式的follow函数来检查文件扩展名:

function isJSONFile (sFilename) {
    var regexJsonFile = new RegExp(".json$", "i");
    return regexJsonFile.test(sFilename);
}
  • 如果文件名字符串以json扩展名结尾,则函数返回 true ,否则返回 false

或直接在您的代码中:

if (filename.match(".json$", "i")) {
    //It's a json extension
} else {
    //It isn't a json extension
}
  • $ 字符仅用于检查字符串的结尾, i 参数用于区分大小写。