0
Regex pattern: hnm_sarai_ntpl_((19|20)\\d\\d)(0?[1-9]|1[012])(0?[1-9]|[12][0-9]|3[01])
File name: hnm_sarai_ntpl_20130808

リモートの場所から FTPFile としてファイルを取得しています。その名前を言及された正規表現パターンと照合したい。

List<String> fileNamePatterns=new ArrayList<String>();
fileNamePatterns.add("hnm_sarai_ntpl_((19|20)\\d\\d)(0?[1-9]|1[012])(0?[1-9]|[12][0-9]|3[01])");

FTPFile file; //file's name is = hnm_sarai_ntpl_20130808

Pattern p = Pattern.compile(_fileNamePatterns.get(0));
Matcher m = p.matcher(file.getName());
if (m.matches()) {
    return file.getName();
} else {
    return "";
}

スニペットは常に戻ってきます""。ファイル名は、指定されたregexと一致することを期待しています。なぜそれが一致していないのかという考えはありますか?

4

0 に答える 0