ファイルの添え番号の桁を3桁に揃えるGroovyスクリプト

開始ディレクトリー以下にあるjpgファイルの添え番号の桁を3桁にそろえるGroovyスクリプト

FlashExtracht でフラッシュファイルから画像を抽出したりした時には、
フラッシュの中のjpegのファイル名か hoge[1].jpg とか hoge[11].jpg とかになって出てくるわけですが、この場合、ソートして見ようと思っても、hoge[1].jpg,hoge[10].jpg,hoge[100].jpg
の様にしか並ばないので、元々の画像の並び順に意味があった場合には、不都合が生じます。
そこでソート可能な様に全ての添え番号を3桁に揃えるGroovyスクリプトを書きました。
例えば
hoge[1].jpg --> hoge[001].jpg
hoge[11].jpg --> hoge[011].jpg
という風にリネームします。

    padLeft()を使ってコード短縮しました

// 開始ディレクトリー以下にあるjpgファイルの添え番号の桁を3桁にそろえる
// 例:hoge[10].jpg --> hoge[010].jpg
new File(".").eachFileRecurse { file -> 
   if(file.isFile() && file.name.endsWith("jpg")) { 
      name = file.getName()
      newname = name
      newname = file.getName().replaceAll(/\d+/){ it.padLeft(3, '0') }
      if (name != newname) {
         println name+" renamed to "+newname
         file.renameTo( new File(file.getParent()+"/${newname}") )
      }
   }
}