我想基于文件扩展名处理文件。我需要处理2个文件:一个扩展名为 System.out.println(order.getTotal());
,另一个文件没有扩展名
文件名可以是任何名称,没关系。
对于.nc扩展名,我有。*。nc 正则表达式,但是我需要组合正则表达式。我用谷歌搜索,但找不到任何东西。有人可以帮助我使用符合这两个条件的正则表达式吗?
答案 0 :(得分:3)
您可以使用此模式(?(?=.*\.)^.*\.nc$|^.*$)
这是带正向超前的条件,它检查字符串是否包含点(模式为(?=.*\.)
)。如果匹配,则匹配扩展名为.nc
的字符串(带有^.*\.nc$
),如果不匹配,则匹配整个字符串(带有^.*$
)。
答案 1 :(得分:0)
您可以使用正则表达式(\w+.nc\b|\b\w+\b[^.])
。它会捕获abc.nc
和abc
之类的东西,但不是 abc.rc
,因此它将仅捕获所需的扩展名或不扩展名。