【发布时间】:2021-10-07 14:48:35
【问题描述】:
我想在文件上传期间使用正则表达式允许/拒绝具有特定文件类型的文件。
这是我想要实现的工作正则表达式 /(\.|\/)(xlsx)$/i 预期输出。
我想要的不是硬编码文件类型,而是将一个保存文件类型的变量传递给正则表达式。
var fileType = 'xlsx';
var regexText = new RegExp("/(\.|\/)(" + fileType + ")$/i");
但是 regexText 的当前输出是 /\/(.|\/)(xlsx)$\/i/ 这与预期的输出不同。如何通过使用没有硬编码的变量来获得与上述相同的输出?有没有不使用正则表达式的解决方案可以提供相同的预期输出?
【问题讨论】:
-
查看RegExp 构造函数。您不需要前导
/,双转义反斜杠,/i标志应该作为第二个参数。请注意,您可以将交替编写为字符类。
标签: javascript jquery regex file-upload jquery-file-upload