У меня есть строка, которая может содержать дату (yyyy-MM-dd) или дату и время (yyyy-MM-dd HH: mm: ss) в соответствующих форматах.Проверьте, содержит ли строка только дату
Я хочу знать, какие строки содержат только дату.
DateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd");
System.out.println(dateFormat.parse("2015-02-02"));
System.out.println(dateFormat.parse("2015-02-02 23:23:23"));
В приведенном выше коде обе строки успешно разбираются, тогда как формат является таким же для первого.
использовать регулярное выражение. – Shriram
Для этого конкретного шаблона вы можете просто проверить, что длина ввода равна 10. Для шаблонов переменной длины это немного сложнее - существуют альтернативные методы анализа, которые позволяют вам видеть, сколько строк было проанализировано. (См. 'Parse (String, ParsePosition)'.) –
@JonSkeet Я также подумал об этом решении, но это похоже на альтернативу. –