Home > Uncategorized > Кодинг: найти буквы-шпионы

Кодинг: найти буквы-шпионы

Столкнулся с такой ситуацией. При копировании текста из web.archive.org в некоторых словах одна или несколько русских букв заменены латинскими с идентичным написанием. Например, p – р, H – Н, c – с.

Возникла задача автоматически лажу в тексте поправить.

Алгоритм

  1. Делаем split с соответствующим regex’ом, чтобы вычленить из текста слова, отделив теги, числа и пунктуацию.
  2. Для каждого слова считаем количество русских и английских букв в нём.
  3. Если количество и русских и английских букв в слове больше нуля, при этом количество английских букв не больше, чем количеств русских – печатаем слово и буквы-шпионы (написанные латиницей). На этом шаге нужен контроль человека. Смотрим, что слова и вправду “кривые” и добавляем в код соответствующие замены.
  4. Складываем в ассоциативный массив (в моём случае HashMap) пары “кривое слово” – “правильный аналог”.
  5. Бежим по массиву ключей и заменяем в тексте все кривые слова на правильные аналоги.

А как бы вы стали решать такую задачу?

Categories: Uncategorized Tags:
  1. No comments yet.
  1. October 7th, 2011 at 17:12 | #1
  2. October 8th, 2011 at 06:32 | #2
  3. October 8th, 2011 at 15:54 | #3
  4. October 9th, 2011 at 11:04 | #4
  5. December 8th, 2011 at 23:20 | #5
  6. December 9th, 2011 at 19:44 | #6
  7. December 10th, 2011 at 03:02 | #7
  8. December 10th, 2011 at 05:35 | #8
  9. December 10th, 2011 at 09:42 | #9
  10. December 11th, 2011 at 12:15 | #10