Отправляет email-рассылки с помощью сервиса Sendsay

[TC] Подскажите, пожалуйста, как можно автоматом заменить в текстовом документе все римские цифры на арабские?

Всем приветы.
Задача передо мною стоит такая. Есть учебники , они в формате *.txt, я
их через Балаболку затем пропускаю. Словарик настроил для Татьяны от
компании Ивона. Но вот она некоторые встречающиеся в книгах римские
цифры читает нормально, а вот некоторые в упор не понимает. То есть она
их зачитывает, но по-английски, то есть римское обозначение вот этой
даты будет ею произносится так:
XVII
экс ви ай ай
Это очень не удобно. Поэтому я хотел оптом заменить эти даты в учебниках
на обычные цифровые обозначения. Но в некоторых книгах их настолько
много, что это достаточно усложняет данный процесс при попытке их
заменить вручную.
В связи с этим прошу знатоков посоветовать как можно данный процесс
автоматизировать? То есть как можно их с помощью опции "Заменить всё" в
блокноте проделать нужное для меня действие?
Сразу же отмечу. Что , например, при попытке заменить автоматом в книгах
XVII век на 17 век заменяется все эти даты, но в книгах также
встречаются даты XVIII век, и тогда в блокноте получается, что до
последней цифры "I" слово заменяется, но потом нужно выискивать 18 век и
дополнительно исправлять последнюю айку на цифру "1". Что усложняет
процесс и отбирает много времени.
Буду рад различным действенным практическим советам. Теорию лучше не
предлагать. Если есть проверенные способы буду очень признателен.
P.S.
Если такой процесс автозамены можно проделаь в текстах в формате MS Word
2016 тоже предлагайте.

Ответить   Fri, 05 Jul 2019 12:44:23 +0600 (#3622758)

 

Ответы:

Здравствуйте, Александр Полководец.

Очевидно, что имеет смысл сначала выполнить замену для XVIII, потом для
XVII, потом для XVI и так далее.
То есть числа, частью которых могут являться другие числа, заменять в первую
очередь.
Впрочем, даже это не обязательно, потому что в диалоге замены у "Балаболки"
можно отметить флаг "Только слово целиком", тогда замены XVII внутри XVIII
происходить не будет.

Также вторым вариантом решения может быть редактирования словаря
"Балаболки", в котором следует просто прописать замены для римских чисел,
чтобы синтезатор читал их правильно.
Успехов. Никита.

Ответить   Fri, 5 Jul 2019 14:50:17 +0300 (#3622789)

 

Приветствую всех!

Как вариант: добавьте чтение римских чисел в словарь синтезатора (не всех,
конечно, а часто встречающихся в книгах интересующей вас тематики). Учтите,
что добавлять надо не в числовом порядке, а сначала наиболее длинные.
К тому же замена цифр (одиночных символов) сопровождается проблемами,
которые нельзя решить без анализа контекста, поскольку тупая замена не
поймет, цифра это или буква .

Успехов. Анатолий.

Ответить   "i_chay" Sun, 7 Jul 2019 18:34:56 +0300 (#3622942)

 

Всем привет.
07.07.2019 21:34, "i_chay" пишет:

Учтите,
Отв.
Да, проблему решил путём добавления римских цифр в основной словарь
Балаболки.
Вопрос снимается.

Ответить   Mon, 08 Jul 2019 00:53:38 +0600 (#3622966)

 

Здравствуйте, уважаемые участники рассылки!

05.07.2019 9:44, Александр Полководец пишет:

блокноте проделать нужное для меня действие?
+++Александр, тут, думаю, ничего не придумаешь кроме команды "заменить
всё", которую придётся проделать несколько раз с разными парами. Главное
в том, чтобы начинать этот процесс не с начала, то есть не с римской
цифры I, а, скажем, с цифры XX, XXI, XIX, XVIII и т.д. А чтобы другие
римские цифры не попали под замену, можно попробовать вводить после
каждой римской цифры пробел и букву "в". Вот этот пробел, или запятая,
или тире могут избавить вас от некорректных замен.

Будьте здоровы!

С уважением, Сергей Новиков

Ответить   Sun, 14 Jul 2019 17:46:28 +0300 (#3623588)