Groovy计数文件数与目录中的regex匹配

sfg*_*ups 5 groovy

我正在使用此代码来计算目录中以's'结尾的文件数.

            def count=0
        def p = ~/.*s/
        new File("c:\\shared").eachFileMatch(p) { file->
            println file.getName().split("\\.")[0]
            count++
        }
        print "$count"
Run Code Online (Sandbox Code Playgroud)

如果有办法避免temp变量并在File类本身使用一些方法?

谢谢

tim*_*tes 9

不是在电脑上,但你可以试试

def count = new File("c:\\shared").listFiles()
                                  .findAll { it.name ==~ /.*s/ }
                                  .size()
Run Code Online (Sandbox Code Playgroud)

  • 为什么不使用`new File(/ c:\ shared /).listFiles().count {it.name ==〜/.*s /``? (3认同)