【问题标题】:Find file sequence with RegExp in Javascript在 Javascript 中使用 RegExp 查找文件序列
【发布时间】:2016-06-27 09:27:25
【问题描述】:

我有一个简单的问题:

如何在 Javascript 中使用 RegExp 来查找与此过滤器匹配的字符串: *[0-9].png 以过滤掉文件序列。

例如:

bird001.png
bird002.png
bird003.png

abc_1.png
abc_2.png

应该忽略 abc_1b.pngabc_abc.png 这样的字符串 我将在 getFiles 函数中使用它。

var regExp = new RegExp(???);
var files = dir.getFiles(regExp);

提前致谢!

编辑:

如果我有一个定义的字符串,比如说

var beginningStr = "bird";

如何检查字符串是否匹配过滤器

beginningStr[0-9].png

?理想情况下,开始字符串不区分大小写。这样过滤器就会允许 Bird01 和 bird02。

再次感谢!

【问题讨论】:

    标签: javascript regex filenames


    【解决方案1】:

    [0-9] 后跟 .png 后的任何内容:

    /^.*[0-9]\.png$/i
    

    或者干脆不开始(正则表达式会自己找到):

    /[0-9]\.png$/i
    

    【讨论】:

    • 您好,我更新了问题,您有解决方案吗?
    【解决方案2】:

    如果我理解正确,您需要一个匹配具有以下名称的文件的正则表达式:

    1. 以字母a-zA-Z 开头
    2. 可选后跟单个_
    3. 后跟一位或多位数字
    4. .png结尾

    正则表达式是[a-zA-Z]_{0,1}+\d+\.png

    您可以尝试在线正则表达式构建器,它可以立即解释您所写的内容。

    【讨论】:

      【解决方案3】:

      如果我理解正确的话,

      var re = /\s[a-zA-Z]*[0-9]+\.png/g;
      var filesArr = str.match(re);
      filesArr.sort();// you can use own sort function
      

      请说明目录变量是什么

      【讨论】:

      • 为什么星星变成拉丁字母?
      猜你喜欢
      • 2013-09-11
      • 2016-12-31
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-06-19
      • 1970-01-01
      • 2020-10-26
      相关资源
      最近更新 更多