Преобразуйте строки из одной даты или, возможно, двух, в правильное количество экземпляров даты Java - PullRequest
1 голос
/ 14 февраля 2012

У меня есть следующие возможные строковые шаблоны (пробелы являются переменными):

2-4 Jun
8-11 Jun
8 Jun-11 Jun
20-Jun
28 Jun-01 Jul
15-18 Jun

и я хочу преобразовать в даты Java одну или две даты.

Есть ли какие-нибудь ярлыки регулярных выражений? Я перевожу устаревшую электронную таблицу Excel, если она имеет значение, столбец не отформатирован)

1 Ответ

1 голос
/ 14 февраля 2012

Если я правильно понял ваш вопрос, вот фрагмент, который должен это сделать или, по крайней мере, дать вам основы:

Matcher m = Pattern.compile("(\\d+)-(\\d+)?\\s*(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)").matcher(input);
while (m.find()) {
    if (m.groupCount()==3) {
        int first = Integer.valueOf(m.group(1));
        int second = Integer.valueOf(m.group(2));
        String month = m.group(3);
        // DO something here
    } else {
        int first = Integer.valueOf(m.group(1));
        String month = m.group(2);
        // Do something here
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...