ダウンロード フォルダーに特定の文字列パターンの PDF ファイルがいくつかあります。最新の保存ファイルを取得する必要があります。
私のコードは
public static void main(String args[])
{
String directory=System.getProperty("user.home")+"\\Downloads";
File dir=new File(directory);
for(File file:dir.listFiles())
{
if(file.getName().endsWith(".pdf"))
{
String res=file.getName();
match(res);
//System.out.println(file.getName());
}
}
}
private static void match(String res) {
String pattern="[a-zA-Z][0-9][0-9]CR[0-9][0-9][0-9][0-9]-[a-zA-Z][a-zA-Z][a-zA-Z]-[A-Z]-[0-9] \\(\\d+\\).pdf";
Pattern r=Pattern.compile(pattern);
Matcher m=r.matcher(res);
if(m.find())
{
System.out.println("******* Match *********"+m.group());
}
else
{
System.out.println("******No match*******");
}
}
そして私の出力はこのようなものです
******* Match *********F90CR0010-HBR-C-4 (5).pdf
******* Match *********F90CR0010-HBR-C-4 (6).pdf
******* Match *********F90CR0010-HBR-C-4 (7).pdf
ここで、中括弧 () 内の最大数を持つファイルを見つける必要があります。したがって、この場合は必要です
******* Match *********F90CR0010-HBR-C-4 (7).pdf
ここで、正規表現で最大の整数を一致させる方法は?
ありがとう