Что именно должно быть указано в конфиге (просто regexp, или я должен использовать простые вещи cosum, или, возможно, существуют определенные библиотеки)?
Я не уверен, что регулярное выражение является правильным подходом здесь. Даже если вы действительно создаете группы захвата для года / месяца / даты и т. Д., Как вы позволите пользователю определить, какая группа захвата соответствует каким данным?
Я бы посоветовал вам взглянуть на SimpleDateFormat
. Строка формата, принятая этим классом, довольно гибкая и удобная для пользователя. Пример приведен
4 июля 2001 г. 12: 08: 56
вы можете сопоставить его с "d MMM yyyy HH:mm:ss"
Какой алгоритм обработки наиболее оптимален (т. Е. Есть строка, и я могу вызывать совпадения, но это приведет к попытке всех возможных подстрок)?
SimpleDateFormat
способен анализировать даты, учитывая строку формата.