свин (scif_yar) wrote in ru_sysadmins,
свин
scif_yar
ru_sysadmins

Category:

К вопросу о парсилке и моих кривых руках

Оригинал взят у scif_yar в К вопросу о парсилке и моих кривых руках
Дано:
Файл с субтитрами. в данном случае srt, но в целом то пофиг, дописать дело нехитрое.
Размером 80 кб.
Захотелось мне сделать на его основе словарь - какие слова я знаю, какие нет. Ну и дописать, если что.
Но готовой парсилки, так чтоб хуяк-хуяк, я что-то не нашел.
Пришлось самому, все самому.

Вот итог (с включенным прямо сверху в сам текст примером с GREP)
https://drive.google.com/file/d/0B7ti0fY0I0eLcTB2RlROWjhXRzQ/view?usp=sharing

Конечно, многое там можно сделать быстрей, не 100 раз по массиву ходить например, ну и вообще местами там ппц.
Однако работает и мою задачу - сделать список уникальных слов - вполне решает.
С 21 до 2 ночи, с перерывами на попездеть. 5 часов, и еще час утром, на сортировку.
Долго конечно.

This entry was originally posted at http://scif-yar.dreamwidth.org/16748.html. Please comment there using OpenID.



UPD. Как верно сказали, можно было проще. "Проще" добавлено в сабж как коммент.
grep -vP "^\d|^\s*$" Alice.eng.srt|sed 's|[\,\.\(\)\?\"\:\!\r]||g'|awk '{print tolower($0)}'|sed 's|<\/*[bi]>||g'|sed 's| |\n|g'|sort -u >Alice.eng.words.txt

итог сабжа - http://petr.winlink.ru/files_duplo/alice.eng.words.txt
Кино вот это https://en.wikipedia.org/wiki/Alice_in_Wonderland_(2010_film)
Немного статистики, кстати.
80 кб сабы содержат 6481 слово (ну, правда там еще какие-то служебные 1-2 попадаются).
После удаления дубликатов остается порядка 1300, причем попадаются и разные формы, например
absolute
absolutely
alice
alice's
are
aren't

попадаются и просто недочищенные ошибки -
bandersnatch
bandersnatch'
'beware

но порядок примерно тот же - около 1200-1500 слов.
Tags: поговорить
Subscribe
  • Post a new comment

    Error

    default userpic

    Your reply will be screened

    Your IP address will be recorded 

    When you submit the form an invisible reCAPTCHA check will be performed.
    You must follow the Privacy Policy and Google Terms of use.
  • 17 comments