сравнение и подмена слов

Есть неоБходимость сравнить предЛОЖЕНие (слова в котором написаны в разном регистре) со словарем заранее подготовленны слов, и если есть совпадения то заменить на свой набор символов.

например в словаре: есть, слов, необходимость, предложение, свой

а на выходе получить:

## ## сравнить ## (слова в котором написаны в разном регистре) со словарем заранее подготовленны ##, и если есть совпадения то заменить на ## набор символов.

пробовал сделать так, но в таком случае не учитывается что есть большие и маленькие буквы

var map = new HashMap<Integer, String>();
        for (int i = 0; i < str.length; i++) {
            if (revie.contains(str[i])) {
                map.put(ix, str[i]);
                revie = revie.replaceAll(str[i], "#" + i + "#");
            }
        }

Ответы (1 шт):

Автор решения: DMITRIY BLAZHKO

решил за дачу с помощью паттерна

for (int i = 0; i < str.length; i++) {
    Pattern p = Pattern.compile(str[i], Pattern.CASE_INSENSITIVE | Pattern.UNICODE_CHARACTER_CLASS);
    Matcher m = p.matcher(text);
    if (m.find()) {
        mExc.put(i, str[ix]);
        text = m.replaceAll("#" + i + "#");
    }
}
→ Ссылка