regex: я хочу проверить, есть ли в моем текстовом файле слова из английского словаря

Мой вариант использования: я использовал прослушиватель в фрагменте, чтобы уведомить активность о том, что произошло что-то. Я сделал новую фиксацию фрагмента по методу обратного вызова. Это работает отлично в первый раз. Но при изменении ориентации активность воссоздается с сохраненным состоянием экземпляра. В этом случае фрагмент не создается снова, подразумевает, что в фрагменте есть слушатель, который является старым разрушенным действием. В любом случае метод обратного вызова будет активирован при действии. Это связано с разрушенной деятельностью, которая вызывает проблему. Решением является сброс слушателя в фрагменте с текущей активностью. Это решает проблему.

-1
задан Santhosh Yedidi 28 February 2019 в 09:36
поделиться

2 ответа

Если каждое слово «санскрит» всегда имеет специальный символ, например «ù», то вы можете проверить соответствие регулярному выражению слова (\w+).

Поскольку это не относится к таким словам, как «прийас», вам придется проверять каждое слово в хранилище данных, которое содержит все английские слова. К сожалению, вы не можете проверить правильность английского слова любым другим способом.

Более быстрый поиск может быть выполнен с использованием три .

0
ответ дан Aditya Gupta 28 February 2019 в 09:36
поделиться

Я не знаком с Юникодом Linux. Но я могу дать вам несколько указаний.

  1. Согласно Wiki , санскритские символы принадлежат к деванагари-юникодскому блоку.

  2. Блок деванагари Unicode включен A8E0— A8FF. Вы можете найти здесь .

    Вам может понадобиться инструмент для конвертации в UTF8, например , этот инструмент .

  3. Установите условие Regex, исключая блок Unicode Devanagari.

    \S+[^\s\xA8E0-\xA8FF.]+.*
    

Regex demo

Это будет легче найти английские предложения.

0
ответ дан Joseph 28 February 2019 в 09:36
поделиться
Другие вопросы по тегам:

Похожие вопросы: