sav1
|
Сообщение #21
28 февраля 2016 в 15:19
|
Маньяк
40 |
Я так и не поняла, чем ворд то плох? слабой автоматизацией, то есть буквально: например в ворде ты ищешь примечание с началом текста "( прим."+ какоето примечание. 1)вызываешь поиск ctrl+f, вбиваешь искать "( прим." 2) Потом ты _руками_ его чистишь 3) И так стопицот раз пока не кончатся примечания. или например замена римских: 1) ты ищешь XI и меняешь на цифру 11 буд-то бы автоматически 2) но ты повторяешь это вручную для других цифр, XII, XIII, XIV. в скрипте с регэкспом + собственные поиски делаешь нужные чистки/замены почти одним нажатием, возможно с предварительной подстройкой под конкретный текст в виде галочек или в файле. А если даже можно (например MS VBA) то сложно популяризовать, сделать простым и доступным. не знаю справится ли ваш скрипт, английские похожие на русские буквы В РУССКИХ словах, вот эта проверка ворду точно не под силу может справиться, придется добавить в механизму словарь, что усложнит или проверять слова на присутствие инородных тел запрещенных веществ букв! (да что-ж такое). MS VBA тоже вероятно сможет, но опять же см п1^: его устанешь передавать в массы.
|
MMMAAANNN
|
Сообщение #22
28 февраля 2016 в 15:56
|
Супермен
36 |
sav1 писал(а): не знаю справится ли ваш скрипт, английские похожие на русские буквы В РУССКИХ словах, вот эта проверка ворду точно не под силу может справиться, придется добавить в механизму словарь, что усложнит или проверять слова на присутствие инородных тел запрещенных веществ букв! (да что-ж такое). MS VBA тоже вероятно сможет, но опять же см п1^: его устанешь передавать в массы. Вообще вот это как раз несложно автоматизировать. Для каждого слова проверяется набор символов, если он не весь только латинский или только кириллица - заменяем в слове латинские буквы на идентичные кириллические.
|
agile
|
Сообщение #23
28 февраля 2016 в 16:24
|
Новичок
37 |
Автоматизировать можно только исправление ошибок распознавания текста. Все остальное делать таким образом чревато. Пример из мануала Voronov: Например, все заголовки в книге в верхнем регистре "ГЛАВА НОМЕР" приведем к нижнему, формата "Глава номер" (отрывок из книги Т. Пратчетта «Посох и шляпа»): — после замены этим регулярным выражением, текст книги будет испорчен. Да, в выбранной книге нет заглавий в верхнем регистре, но это просто наглядный пример того, как замена по слишком «общему» регулярному выражению может привести к неожиданным результатам.
|
Voronov
|
Сообщение #24
28 февраля 2016 в 16:39
|
Кибергонщик
54 |
agile, Как я уже говорил по той книге были лишь примеры. Да и здесь я пытаюсь донести о том, что далеко не все можно автоматизировать регулярками. В видео лишь примеры, логика работы с ними. Дальше я делая выделение заголовков уже по-другому ^([А-Я]+)\b\s([А-Я]+)\b Нету никакой универсальности. Наглядные примеры под конкретный случай, не более. Нужно только главы, логично тогда ^ГЛАВА\s[А-Я]+$ так там есть в заголовках глав и названия, кавычки, тут тоже это не учитывается. ^ГЛАВА\s.+$ Все это остается на совесть редактору, что бы учесть все случаи согласно книге. Поэтому под автоматизацию поместить всякие кавычки, скобочки, лишние пробелы, отступы еще можно. В остальном нужно смотреть самому. При помощи регулярок можно найти и длинные предложения, и последовательность предложений, которые не разобьются и образуют объемный отрывок. Это тоже можно сделать скриптом, только всегда красиво разбить не получится. Не так много таких участков бывает. В любом случае книгу придется просматривать и доделывать вручную, если есть желание на выходе получить чистый удобно отформатированный текст без ошибок или с их минимальным количеством. Последний раз отредактировано 28 февраля 2016 в 16:54 пользователем Voronov
|
ТОМА-АТОМНАЯ
|
Сообщение #25
28 февраля 2016 в 17:36
|
Организатор событий
116 |
MMMAAANNN писал(а): sav1 писал(а): не знаю справится ли ваш скрипт, английские похожие на русские буквы В РУССКИХ словах, вот эта проверка ворду точно не под силу может справиться, придется добавить в механизму словарь, что усложнит или проверять слова на присутствие инородных тел запрещенных веществ букв! (да что-ж такое). MS VBA тоже вероятно сможет, но опять же см п1^: его устанешь передавать в массы. Вообще вот это как раз несложно автоматизировать. Для каждого слова проверяется набор символов, если он не весь только латинский или только кириллица - заменяем в слове латинские буквы на идентичные кириллические. Как понять для каждого слова? Если там нет на английском ни единого слова, то да процесс очень быстрый и легкий. А если они присутствуют эти слова, в них же не будешь заменять одним скопом все а или о. Я не представляю как выделить русские слова, содержащие одну латинскую букву, они могут быть любыми. Ну раз человек не может придумать решение, то скрипту наверное, точно не под силу. Последний раз отредактировано 28 февраля 2016 в 17:37 пользователем ТОМА-АТОМНАЯ
|
MMMAAANNN
|
Сообщение #26
28 февраля 2016 в 17:37
|
Супермен
36 |
Конечно, что-то нужно делать вручную. Но есть задачи, которые можно и нужно автоматизировать. Скажем, главные проблемы книг - неразрывные пробелы, угловые скобки и амперсанд - легко решаемы автоматизацией как раз.
|
ТОМА-АТОМНАЯ
|
Сообщение #27
28 февраля 2016 в 17:42
|
Организатор событий
116 |
sav1 писал(а): Я так и не поняла, чем ворд то плох? слабой автоматизацией, то есть буквально: например в ворде ты ищешь примечание с началом текста "( прим."+ какоето примечание. 1)вызываешь поиск ctrl+f, вбиваешь искать "( прим." 2) Потом ты _руками_ его чистишь 3) И так стопицот раз пока не кончатся примечания. или например замена римских: 1) ты ищешь XI и меняешь на цифру 11 буд-то бы автоматически 2) но ты повторяешь это вручную для других цифр, XII, XIII, XIV. в скрипте с регэкспом + собственные поиски делаешь нужные чистки/замены почти одним нажатием, возможно с предварительной подстройкой под конкретный текст в виде галочек или в файле. А если даже можно (например MS VBA) то сложно популяризовать, сделать простым и доступным. не знаю справится ли ваш скрипт, английские похожие на русские буквы В РУССКИХ словах, вот эта проверка ворду точно не под силу может справиться, придется добавить в механизму словарь, что усложнит или проверять слова на присутствие инородных тел запрещенных веществ букв! (да что-ж такое). MS VBA тоже вероятно сможет, но опять же см п1^: его устанешь передавать в массы. с веками согласна, неудобно надо каждый век проверить на наличие. А по поводу примечаний нет, я их цифры не убираю, меняю квадратные скобки на круглые, чтобы не было глюков. Примечание выношу в информацию с теми же цифрами. Если же речь идет о ссылках, которые выглядят как сноски у них другой формат - надстрочный, выделяешь один, нажимаешь правой кнопкой выделить все того же формата, выделяешь и удаляешь, информация по сноскам к сожалению тоже убирается навсегда, а могла бы пригодиться для информации. Видимо речь именно о ней, что если ее хочешь сохранить, то приходится возиться вручную. Последний раз отредактировано 28 февраля 2016 в 17:43 пользователем ТОМА-АТОМНАЯ
|
Voronov
|
Сообщение #28
28 февраля 2016 в 17:53
|
Кибергонщик
54 |
Я не представляю как выделить русские слова, содержащие одну латинскую букву, они могут быть любыми. Ну раз человек не может придумать решение, то скрипту наверное, точно не под силу. В видео это показывается. Делается это легко, автоматическая замена на параллельный символ с нужной раскладки - требует дополнительных манипуляций. Умеет ворд заменять по регуляркам или нет - понятия не имею. Не пользуюсь им. Но сколько уже книг пробовал загружать и редактировать, случаев мешанины русских и английских букв очень не много. Больше всего было в Войне и Мире. Для того случая прогнал через инструкцию на python, заменив автоматически. А просто найти и поправить в ручную: [а-яА-Я][a-zA-Z]|[a-zA-Z][а-яА-Я]
|
ТОМА-АТОМНАЯ
|
Сообщение #29
28 февраля 2016 в 18:26
|
Организатор событий
116 |
опять китайская грамота. Вы имеете ввиду символы с ударением? Сверху такой значок на гласной, она при закачке меняется на латиницу, да их не сложно найти и заменить, а если значка нет. Какой автоматизм то тут, если встречается и латинский текст. Автоматически то никак же не заменить. Мы явно друг друга не понимаем.
|
MMMAAANNN
|
Сообщение #30
28 февраля 2016 в 18:59
|
Супермен
36 |
ТОМА-АТОМНАЯ писал(а): опять китайская грамота. Вы имеете ввиду символы с ударением? Сверху такой значок на гласной, она при закачке меняется на латиницу, да их не сложно найти и заменить, а если значка нет. Какой автоматизм то тут, если встречается и латинский текст. Автоматически то никак же не заменить. Мы явно друг друга не понимаем. Тома, скрипт умеет различать латинские и кириллические буквы. Задаешь скрипту задание: проверь каждое слово, и если там рядом кириллическая буква и латинская буква, сделай то-то (например - перемести меня в эту точку, замени латинскую букву на такую-то и т. п.). В MS Word тоже можно так искать, в поиске надо поставить кажется галочку "подстановочные знаки" (в английской версии wildcards). Напрмер, если ты сделаешь поиск с установленной такой галочкой и поставишь в поле поиска [a-zA-Z], Word будет искать каждый латинский символ в документе. Квадратные скобки означают, что надо искать любой из символов, представленных внутри, а дефис означает диапазон. Попробуй. В программах, где более полно реализован механизм регулярных выражений, можно искать более точно. Вон выше Voronov написал строку, которая позволяет искать или соседство кириллического символа с латинским, или наоборот, латинского символа с кириллицей. Это позволяет обнаружить все слова, в которых есть и кириллица, и латиница. Вертикальная черта там означает "или" (в Word такой функциональности нет - но можно по очереди поискать сначала [а-яА-Я][a-zA-Z], а потом [a-zA-Z][а-яА-Я] ). Последний раз отредактировано 28 февраля 2016 в 19:26 пользователем MMMAAANNN
|
AvtandiLine
|
Сообщение #31
28 февраля 2016 в 19:11
|
Кибергонщик
61 |
По использованию подстановочных знаков в Word нравится мне вот эта инструкция с парой примеров... И у нашего DIgorevich'а где-то есть просто превосходные материалы, даже с видео.
|
ТОМА-АТОМНАЯ
|
Сообщение #32
28 февраля 2016 в 20:01
|
Организатор событий
116 |
Мэн, спасибо, это оказывается, настраивать надо. Я все равно не поняла, как целиком то латинские слова отмести, то есть это тупо глядеть в экран, перебирая по порядку все, что есть в задании? Наверное, это что-то особенное.
|
Voronov
|
Сообщение #33
28 февраля 2016 в 20:11
|
Кибергонщик
54 |
Том, посмотри видео, станет все понятно. Ты ведь не смотрела, иначе не спросила бы про ударение и т.д. Квадратные скобки означают последовательность символов. [а-яА-Я] буквально значит "все буквы русского алфавита, как заглавные так и строчные". При использовании только этой части регулярного выражения ты найдешь отдельно все русские буквы в тексте. Но нас интересует последовательность русская-английская, либо английская-русская буква друг за другом. Поэтому [а-яА-Я][a-zA-Z] означает "найти русскую букву рядом с которой стоит английская". Вертикальная черта | - означает логическое "или". Так выражение [а-яА-Я][a-zA-Z]|[a-zA-Z][а-яА-Я] буквально означает "найти русскую букву за которой идет английская ИЛИ найти английскую букву за которой идет русская. Под это выражение попадут следующие примеры: " ТОМА АТО MНАЯ". Жирным шрифтом английские буквы. Уж не знаю как подробней расписать. Последний раз отредактировано 28 февраля 2016 в 20:19 пользователем Voronov
|
ТОМА-АТОМНАЯ
|
Сообщение #34
28 февраля 2016 в 20:38
|
Организатор событий
116 |
То есть кучу английских слов он при этом выводить не будет? Вот это самое центральное. Мне надоедает проверять эти буквы, когда мелькает куча английских слов, можно чего-то не заметить. А подтверждения отсутствия такой накладки я никак ни от кого добиться не могу. Все говорят детали задания и механизм проверки. Еще раз спрошу, внятно и по-русски, английские слова нигде не засветятся, чтобы на нервы не действовали? скрытый текст… Видимо когда сам не попробуешь, не поймешь, ибо походу вопроса не поняли вообще, скорее всего это я одна мучаюсь перемешкой русских и английских слов, самый неприятный момент проверки Последний раз отредактировано 28 февраля 2016 в 20:48 пользователем ТОМА-АТОМНАЯ
|
Voronov
|
Сообщение #35
29 февраля 2016 в 03:12
|
Кибергонщик
54 |
нет, выделятся только слова в которых: - после русской буквы идет английская сразу - после английской буквы идет сразу русская целиком английские слова не попадут под это регулярное выражение. Эта же регулярка поможет в английских словах найти русские буквы, что логично. Последний раз отредактировано 29 февраля 2016 в 03:12 пользователем Voronov
|
Reset82
|
Сообщение #36
29 февраля 2016 в 07:29
|
Маньяк
42 |
Voronov, ты уже тут все расписал, осталось ссылку на свой блог, и ссылку на видос в главный пост закрепить! а то если видос смотреть не будут, то и не поймут...
|
ТОМА-АТОМНАЯ
|
Сообщение #37
29 февраля 2016 в 14:08
|
Организатор событий
116 |
Не все любят видеоинструкции, иногда на них засыпают, а вот читать они точно любят, склад у всех разный. Дошло, спустя две страницы, что английские слова на нервы действовать не будут, в ходе такого задания, осталось разобраться, как именно надо задавать и куда это вставлять. Меня даже с прочиткой проверка не напрягает, просто на нее надо время, а его обычно не хватает, а вот когда при помощи поисковика прокручиваешь определенные гласные или согласные, похожие на русские, выходят эти английские слова, вертишь их до посинения, вот это очень действовало на нервы. Думала, нет способа избежать этой рутины, а оказывается он давно существует и все его активно используют, красота. Попробую научиться.
|
sav1
|
Сообщение #38
1 марта 2016 в 11:13
|
Маньяк
40 |
Voronov писал(а): Так выражение [а-яА-Я][a-zA-Z]|[a-zA-Z][а-яА-Я] буквально означает "найти русскую букву за которой идет английская ИЛИ найти английскую букву за которой идет русская. да, это покроет 95% случаев, кроме тех когда неправильная буква стоит на первом месте (так например, "Tома" где "T" в инглише). Но что скажет Тома по своему опыту: действительно ли встречаются такие случаи что следует их учитывать Если будет в итоге скрипт, то неплохо для контроля после работы выводить лог, чего он наделал. Последний раз отредактировано 1 марта 2016 в 11:19 пользователем sav1
|
Voronov
|
Сообщение #39
1 марта 2016 в 11:58
|
Кибергонщик
54 |
это учитывает все случаи, включая [T]ома на английском. [a-zA-Z][а-яА-Я] - вторая часть это делает. Тут не учитываются несколько английских подряд в одном слове, но это и не нужно в случае поиска в Sublime Text, после исправления первого будет автоматически подсвечена вторая буква. Изменив так будет учитываться. Я еще раз повторю что я изначально не писал примеры "общие". Это видео было ознакомительное. Поняв логику работы регулярок пишите свои, любой сложности. Эта информация изначально не для всех: кому-то просто лень немного разобраться, кому-то это сложно, а кому-то это просто не надо.
|
sav1
|
Сообщение #40
1 марта 2016 в 17:05
|
Маньяк
40 |
Да, для обнаружения вопроса нет. Для автоматической замены случай 'T'ома требует более сложный разбор. Конечно кому понятно разберется, кто не владеет - продолжит делать замены вручную.
|