Три мощных регулярных выражения для OmegaT

Регулярные выражения в OmegaT выручают переводчикаОдной из наиболее полезных функций в OmegaT… Подождите-ка, я, по-моему, слишком часто это говорю? 🙂

Ну да ладно. На сей раз речь пойдет о регулярных выражениях. Я уже писал про то, как с их помощью можно составить список распространенных ошибок. Но дело этим не ограничивается — применять их можно также в правилах сегментации и при поиске. В этой статье я разберу несколько основных регулярных выражений, благодаря которым работать над переводом в OmegaT становится существенно легче и приятнее.

Поиск слов целиком

Два основных способа поиска в OmegaT — это точные совпадения и ключевые слова:

  • Точный поиск возвращает результаты, в точности совпадающие с критерием поиска, как это происходит при обычном поиске, скажем, в Microsoft Word:

«open box» возвращает «open box», «open boxes», «re-open boxes» и т. д., но не «opened box».

  • А чтобы найти «opened box», нужно уже искать по ключевым словам. Тогда OmegaT будет искать любое количество отдельных критериев поиска в любом порядке внутри отдельно взятого сегмента.

«open box» вернет «opened box», «An opened box fell to the floor» и «The mailbox was left opened».

Кстати, этот параметр крайне полезен. И он по большому счету является уникальной фишкой OmegaT, поскольку во многих платных аналогах пока отсутствует.

Так как же найти только «open box», без окончаний и приставок? Нужен параметр «Слово целиком». Во многих программах он предусмотрен, но в OmegaT пока нет. Ничего страшного, достаточно заключить искомый текст в регулярное выражение b, обозначающее границу слова. Установите флажок Regular expressions и запустите поиск.

Вот так это должно выглядеть: bopen boxb

Поиск непереведенных сегментов

Для перехода к следующему непереведенному сегменту достаточно нажать Ctrl+U. Но что, если хочется увидеть их все сразу, а не по одному сегменту за раз? Это можно сделать с помощью простого регулярного выражения: ^$. Результаты поиска можно использовать, например, следующим образом:

  1. Перепроверить, не осталось ли в проекте непереведенных сегментов.
  2. Отфильтровать 100-процентные совпадения, чтобы отобразить в панели Editor только требующий перевода текст. Это помогает лучше сосредоточиться и не отвлекаться на готовые переводы.
  3. Извлечь непереведенные сегменты в отдельный файл. Например, такой файл может пригодиться, когда нужно исключить из объема работы 100-процентные совпадения, не оплачиваемые клиентом. Если оставить их в проекте, то они будут отвлекать и, более того, могут быть включены в результаты проверки с помощью программы контроля качества, такой как Verifika.

Один любой знак

До недавнего времени я не подозревал, насколько легко в OmegaT создавать правила сегментации с помощью столь простого регулярного выражения, как точка. Если мне нужно разбить сегмент после определенного элемента, то я просто указываю его в правиле как предшествующий элемент (pattern before) и точку как последующий элемент (pattern after). Вот пример:

Open the Settings window.nnOpen the Files tab.

Такие склеенные предложения довольно неудобны, потому что здесь они объединены в один сегмент, а в другом месте в проекте могут быть двумя отдельными сегментами:

Open the Settings window.

Open the Files tab.

Таким образом, получаем двойную работу и риск непоследовательного перевода. Вот где на выручку приходит могучая точка. Просто добавляем два следующих правила сегментации:

(Флажок Break/Exception установлен)

Pattern Before: \n\n (дополнительные обратные черты нужны для того, чтобы OmegaT воспринимала «n» как текст, а не аналогичное регулярное выражение, обозначающее разрыв строки)

Pattern After: .

И второе, являющееся зеркальным отражением первого:

(Флажок Break/Exception установлен)

Pattern Before: .

Pattern After: \n\n

Вот и все. В итоге получаем два аккуратных сегмента, с которыми приятнее работать и которые могут даже оказаться повторами других идентичных предложений в проекте:

Open the Settings window.

nn

Open the Files tab.

Большинство вышеперечисленных регулярных выражений взяты с чрезвычайно полезного форума OmegaT. В очередной раз снимаю шляпу перед людьми, которые работают над OmegaT и в ней!

Оставьте комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *