Недавно мне пришлось искать несколько строковых значений, чтобы увидеть, какой из них соответствует определенному шаблону. Ни число строковых значений, ни сам шаблон не будут очищены до тех пор, пока пользовательский запрос не будет введен пользователем. Проблема в том, что каждый раз, когда мое приложение запускает следующую строку, я заметил:
if (stringValue.matches (rexExPattern))
{
// do something so simple
}
требуется около 40 микросекунд. Не нужно говорить, когда число строк превышает несколько тысяч, это будет слишком медленно.
Образец выглядит примерно так:
"A*B*C*D*E*F*"
где A ~ F - вот только примеры, но шаблон - это нечто подобное выше. Обратите внимание, что шаблон фактически изменяется для каждого поиска. Например, "A * B * C *" может измениться на W * D * G * A * ".
Интересно, есть ли более хорошая подстановка для вышеупомянутого шаблона или, в более общем плане, альтернатива для регулярных выражений java.