У меня много файлов, из которых я получаю данные, и я ударил стену со значениями даты, окруженными другими данными.Я использую Java, и регулярное выражение, которое я использую, работает для переменной string_i_currently_match
, однако мне нужно, чтобы оно совпадало с example_string_i_need_to_match
String example_string_i_need_to_match = "data 10/12/2010, data, data";
String string_i_currently_match = "10/12/2010,";
Pattern pattern = Pattern.compile(
"^(0[1-9]|[12][0-9]|3[01])[- /.](0[1-9]|1[012])[- /.](19|20)\\d\\d(?:,)$"
);
Matcher matcher = pattern.matcher(fileString);
boolean found = false;
while (matcher.find()) {
System.out.printf("I found the text \"%s\" starting at " +
"index %d and ending at index %d.\n",
matcher.group(), matcher.start(), matcher.end());
found = true;
}
if(!found){
System.out.println("No match found.");
}
Возможно, это из-за того, что я исчерпан, но я не могузаставить это соответствовать.Любая помощь, даже указатели, будет принята с благодарностью.
Редактировать: Чтобы уточнить, я не хочу совпадать с data, data
, но просто получить индекс даты сам.