import java.util.regex.Matcher;
import java.util.regex.Pattern;
import java.text.Normalizer;
class Ideone
{
public static void main
(String[] args
) { String haystack
[] = {"Apple",
"Apple",
"Apple"}; String needle
[] = {"ápple",
"apple",
"Applé"}; for (int i = 0; i < haystack.length; i++) {
find(
normalize(haystack[i]),
normalize(needle[i])
)
);
}
}
return Normalizer.normalize(s, Normalizer.Form.NFD).replaceAll("\\p{Mn}", "");
}
public static boolean find
(String haystack,
String needle
) { Pattern p = Pattern.compile(needle, Pattern.CASE_INSENSITIVE);
Matcher m = p.matcher(haystack);
if (m.find()) {
return true;
} else {
return false;
}
}
}
aW1wb3J0IGphdmEudXRpbC5yZWdleC5NYXRjaGVyOwppbXBvcnQgamF2YS51dGlsLnJlZ2V4LlBhdHRlcm47CmltcG9ydCBqYXZhLnRleHQuTm9ybWFsaXplcjsKCmNsYXNzIElkZW9uZQp7CglwdWJsaWMgc3RhdGljIHZvaWQgbWFpbihTdHJpbmdbXSBhcmdzKSB7CgkJU3RyaW5nIGhheXN0YWNrW10gPSB7IkFwcGxlIiwiQXBwbGUiLCJBcHBsZSJ9OwoJCVN0cmluZyBuZWVkbGVbXSA9IHsiw6FwcGxlIiwgImFwcGxlIiwgIkFwcGzDqSJ9OwoJCWZvciAoaW50IGkgPSAwOyBpIDwgaGF5c3RhY2subGVuZ3RoOyBpKyspIHsKCQkJU3lzdGVtLm91dC5wcmludGxuKAoJCQkJZmluZCgKCQkJCQkgIG5vcm1hbGl6ZShoYXlzdGFja1tpXSksIAoJCQkJCSAgbm9ybWFsaXplKG5lZWRsZVtpXSkKCQkJCSkKCQkJKTsKCQl9Cgl9CgkKCXB1YmxpYyBzdGF0aWMgU3RyaW5nIG5vcm1hbGl6ZShTdHJpbmcgcykgewoJCXJldHVybiBOb3JtYWxpemVyLm5vcm1hbGl6ZShzLCBOb3JtYWxpemVyLkZvcm0uTkZEKS5yZXBsYWNlQWxsKCJcXHB7TW59IiwgIiIpOwoJfQoJCglwdWJsaWMgc3RhdGljIGJvb2xlYW4gZmluZChTdHJpbmcgaGF5c3RhY2ssIFN0cmluZyBuZWVkbGUpIHsKCQlQYXR0ZXJuIHAgPSBQYXR0ZXJuLmNvbXBpbGUobmVlZGxlLCAgUGF0dGVybi5DQVNFX0lOU0VOU0lUSVZFKTsKCQlNYXRjaGVyIG0gPSBwLm1hdGNoZXIoaGF5c3RhY2spOwoJCWlmIChtLmZpbmQoKSkgewoJCQlyZXR1cm4gdHJ1ZTsKCQl9IGVsc2UgewoJCQlyZXR1cm4gZmFsc2U7CgkJfQoJCQoJfQp9Cg==