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++) {
			System.out.println(
				find(
					  normalize(haystack[i]), 
					  normalize(needle[i])
				)
			);
		}
	}
	
	public static String normalize(String s) {
		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;
		}
		
	}
}
