import java.util.*;
import java.lang.*;
import java.io.*;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
class Ideone
{
{
"(?:[^_]+)_(?:[^_]+)_(?:[^_]+)_([^_]+)",
".*?_.*?_.*?_([^_]+)",
"^[^_]*_[^_]*_[^_]*_([^_]*)_"
};
String s
= "ABC_XYZ_123_adbc1234-ed98_1234.dat";
Pattern pattern = Pattern.compile(p);
Matcher matcher = pattern.matcher(s);
if (matcher.find()) {
System.
out.
println(matcher.
group(1)); }
}
}
}
aW1wb3J0IGphdmEudXRpbC4qOwppbXBvcnQgamF2YS5sYW5nLio7CmltcG9ydCBqYXZhLmlvLio7CmltcG9ydCBqYXZhLnV0aWwucmVnZXguTWF0Y2hlcjsKaW1wb3J0IGphdmEudXRpbC5yZWdleC5QYXR0ZXJuOwoKY2xhc3MgSWRlb25lCnsKCXB1YmxpYyBzdGF0aWMgdm9pZCBtYWluIChTdHJpbmdbXSBhcmdzKSB0aHJvd3MgamF2YS5sYW5nLkV4Y2VwdGlvbgoJewoJCVN0cmluZyBwYXR0ZXJuc1tdID0geyAKCQkJIig/OlteX10rKV8oPzpbXl9dKylfKD86W15fXSspXyhbXl9dKykiLCAKCQkJIi4qP18uKj9fLio/XyhbXl9dKykiLAoJCQkiXlteX10qX1teX10qX1teX10qXyhbXl9dKilfIgoJCX07CgkJCgkJU3RyaW5nIHMgPSAiQUJDX1hZWl8xMjNfYWRiYzEyMzQtZWQ5OF8xMjM0LmRhdCI7CgkJCgkJZm9yIChTdHJpbmcgcCA6IHBhdHRlcm5zKSB7CgkJCQoJICAgICAgICBQYXR0ZXJuIHBhdHRlcm4gPSBQYXR0ZXJuLmNvbXBpbGUocCk7CiAgICAJCU1hdGNoZXIgbWF0Y2hlciA9IHBhdHRlcm4ubWF0Y2hlcihzKTsKICAgIAkJCiAgICAJCWlmIChtYXRjaGVyLmZpbmQoKSkgewogICAgCQkJU3lzdGVtLm91dC5wcmludGxuKG1hdGNoZXIuZ3JvdXAoMSkpOwoJCQl9CgkJfQoJfQp9