Допустим, у нас есть список следующих строк: admin, sam1, sam2, max, maximus
Then in search box if I give
*a*m* should return admin
*sam* should return sam1,sam2
m* should return max,maximus
max* should return max,maximus
и т.д.
Мой код выглядит следующим образом (пример кода, не входящий в список): -
private static final String REGEX = ".*max*.";
private static final String INPUT = "maximus";
private static Pattern pattern;
private static Matcher matcher;
public static void main( String args[] ) {
System.out.println("matches(): "+matcher(REGEX,INPUT));
}
private static boolean matcher(String filterCriteria,String parentString)
{
Pattern pattern = Pattern.compile(filterCriteria);
Matcher matcher = pattern.matcher(parentString);
return matcher.matches();
}
Еще немного, с ложным выводом, но это должно быть правдой:
1. private static final String REGEX = ".*ad*.";
private static final String INPUT = "admin";
2. private static final String REGEX = ".*max*.";
private static final String INPUT = "max11";
3. private static final String REGEX = ".*sa*.";
private static final String INPUT = "sam1";