Как нормализовать unicode строку (алфавиты и спец. символы)?
Например, мне нужно определить, содержит ли строка в utf-8 слово "лопата". Вроде бы ничего сложного, если бы не:
1. Одинаковые буквы из разных алфавитов. В данном случае буквы "о" и "а" могут быть латинскими. Кириллица и латиница - это ведь еще не всё?
2. Специальные unicode символы. Пробел нулевой ширины \u200b, символы направления текста (bidi) и пр.
Как с этим справиться? Метод normalize из intl не поможет. Что-то можно заменить вручную (вырезать некоторые спец. символы), заменить алфавиты, но всего же не предусмотреть. Существует ли какое-нибудь готовое решение или комплекс из нескольких решений?