Groovy 计数目录中与正则表达式匹配的文件数量

标签 groovy

我使用此代码来计算目录中以“s”结尾的文件数量。

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

是否有办法避免使用临时变量并在 File 类本身中使用某些方法?

谢谢

最佳答案

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

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

关于Groovy 计数目录中与正则表达式匹配的文件数量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20874695/

相关文章:

grails - 使用Grails g:timeZoneSelect标签?

java - 指定 groovy-variable 的类型

mongodb - 尝试使用 mongodb 插件在 grails 中创建一个 mongodb 集合

Groovy Elvis 运算符与逻辑

maven - 如何使用 jenkins 将 grails 二进制插件部署到 Artifact ?

gradle - gradle在外部项目上运行任务

java - 如果每个月有30天,计算年、月、日的差值

groovy - 如何在groovy中调用接受可变参数的 super 构造函数?

java - 如何通过循环值并为每个文件进行 HTTP 调用来生成多个文件?

java - 在war文件中的WEB-INF之外创建配置属性文件