Я анализирую файл и в нем есть записи, основанные на времени. Формат как:Java Регулярное выражение Соответствие для hh: mm: ss in String
00:02:10-XYZ:Count=10
00:04:50-LMK:Count=3
Вот что я хочу, чтобы извлечь значение времени из строки строки
Я искал много ссылок и не мог узнать вещь, что я хочу, в конце концов я написал это код.
Pattern pattern = Pattern.compile("((?i)[0-9]{1,2}:??[0-9]{0,2}:??[0-9]{0,2})"); //(?i)[0-9]{1,2}:??[0-9]{0,2}:??[0-9]{0,2} //\\d{1,2}:\\d{1,2}:\\d{1,2}
Matcher matcher;
List<String> listMatches;
Ниже цикл, где я применяю логику
for(int x = 0; x < file_content.size(); x++)
{
matcher= pattern.matcher(file_content.get(x));
listMatches = new ArrayList<String>();
while(matcher.find())
{
listMatches.add(matcher.group(1));
break;
}
}
Я хочу, когда "Matcher.find()" дает верно возвращает меня [00:02:10] в первой итерации и [00 : 04: 50] в 2-й итерации.
вы рассмотрели с помощью [SimpleDateFormat] (http://docs.oracle.com/javase/6/docs/api/java/text/SimpleDateFormat.html) вместо того, чтобы писать свои собственные регулярные выражения? –
Нет, сэр, я этого не сделал, спасибо, что поделился своим ценным кодом – DareDevil