gpt4 book ai didi

java FilenameFilter 正则表达式(向前看)

转载 作者:行者123 更新时间:2023-12-02 06:47:22 24 4
gpt4 key购买 nike

我正在尝试使用 FilenameFilter 来过滤文件以 grep 文件在目录中。

% ls -1
DirFilter.class
DirList.class
DirList.java
doctors.txt
node.l
rels.l

我正在尝试过滤node.lrels.l。当且仅当两个文件都存在时,过滤器才会成功。

我在 debuggex.com 上尝试了我的正则表达式,它似乎按预期工作: http://www.debuggex.com/embed/CZgVeUE2iWsNfRNG

我的正则表达式:(?s)node.l.?(?=(rels.l))

但是当我通过 DirList.java 过滤器运行它时,它不起作用..

% java DirList "(?s)node.l.?(?=(rels.l))"
<no-output>

现在我正在使用 Thinking in Java 中的 DirList.java http://www.cs.odu.edu/~cs476/tijava2/c10/DirList.java

有什么想法吗?

最佳答案

DirList 正在分别针对每个文件名评估您的正则表达式,而不是作为 ls 返回的单个 \n 分隔目录列表字符串。在这些条件下,您的正则表达式永远不会匹配,因为它一次不会看到多个文件名。

关于java FilenameFilter 正则表达式(向前看),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18476432/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com