public final class FileWatchUtil {
// TODO スレッドID指定の場合の考慮も必要か
- private static final Pattern VIDEO_ID_PATTERN = Pattern.compile("\\w\\w\\d+");
+ private static final Pattern VIDEO_ID_PATTERN = Pattern.compile("(\\w\\w\\d+)");
private FileWatchUtil() {
}
- public static SortedSet<String> getVideoIds(Collection<Path> paths) {
+ public static SortedSet<String> getVideoIds(Collection<Path> paths, String text) {
final SortedSet<String> set = new TreeSet<>();
for (Path p : paths) {
final String name = FilenameUtils.getBaseName(p.toString());
final Matcher m = VIDEO_ID_PATTERN.matcher(name);
while (m.find()) {
- set.add(m.group());
+ final String alt = m.group(1);
+ if (alt.startsWith(text)) {
+ set.add(alt);
+ }
}
}
return set;