Find/Change нескольких слов, не стоящих подряд

Статус
Закрыто для дальнейших ответов.

Serzhe

Участник
Топикстартер
Сообщения
15
Реакции
0
Всем, привет!
возможно ли в InDesign выполнять поиск и замену нескольких слов одновременно.
Например имеем последовательность

product: 1a1a1a
from 000001 to 000003
000005
from 000007 to 000009
(далее все повторяется с изменениями номеров)

требуется - за один «проход» поменять английские слова (только слова) на русские (продукт с по).

заранее спасибо!
 

imma

15 лет на форуме
Сообщения
3 089
Реакции
2 185
ищем
Код:
product:(.+)\rfrom(.+)to(.+)\r(.+)\rfrom(.+)to(.+)

меняем на
Код:
продукт:$1\rс$2по$3\r$4\rс$5по$6
 

Serzhe

Участник
Топикстартер
Сообщения
15
Реакции
0
Спасибо!
Если можно – немного подкорректировать. Пример работает так как нужно на указанном образце. В моем случае – повторения слов. Есть что-то вроде списка:
Общий шаблон:
product: 1a1a1a
From 000001 to 000002 (может быть nповторов с указанием разных номеров в диапазоне)
000004 (может быть mповторов с указанием номеров по возрастанию)
product: 2a2a2a
From 000001 to 000006
From 000008 to 000011
000016
000018
Название «product» задаёт группу, диапазон или отдельное значение – конкретные серийные номера из этой группы.
Да, ещё может быть такое:
product: 2a2a2a (cont’d) - т. е. продолжение группы
From 000020 to 000025
From 000030 to 000033
000036
000038
 

NNN5

Модератор
15 лет на форуме
Сообщения
1 257
Реакции
1 013
Либо используйте бесплатный скрипт Find Change by List, либо меняйте не в один проход, а в три. Либо пропишите запрос посложнее, но это может быть чревато ошибками (раз у вас текст настолько нерегулярный).
 

Serzhe

Участник
Топикстартер
Сообщения
15
Реакции
0
вот и хотел узнать - возможно ли это вообще.
Текст нерегулярен в части отдельных номеров / диапазонов
обязательные атрибуты:
product: (пишется если есть или диапазон или отдельный номер или оба)
n × from # to # (диапазон может быть или не быть (в последнем случае должен быть отдельный номер))
m × # (отдельный номер может быть или не быть (в последнем случае должен быть диапазон))
Последовательность для n и m может быть абсолютно любая. Начинаться последовательность может как с m, так и с n.
product: #
n × from # to #
m × #
m × #
n × from # to #
product: #
m × #
m × #
n × from # to #
n × from # to #
product: #

и т. д. – любое сочетание n и m
 

NNN5

Модератор
15 лет на форуме
Сообщения
1 257
Реакции
1 013
В чем все-таки смысл делать замену за один проход? Если это принципиально, пропишите в скрипте Find Change by List четыре замены (product, from, to, cnt'd), да и все. Он обработает все данные за один проход. Привяжите к кнопке, если надо.
Что касается принципиальной возможности, то ухитриться учесть все варианты вашей нерегулярности, наверное, можно. Однако "жизнь, товарищ капитан, опережает мечту!" Что-то пропустите, будет неловко.
 

Serzhe

Участник
Топикстартер
Сообщения
15
Реакции
0
всем спасибо!
в один проход – да, для меня это принципиально, т. к. всего этого может быть на пару десятков страниц.

Скрипт буду пробовать.
 

imma

15 лет на форуме
Сообщения
3 089
Реакции
2 185
Время, необходимое на последовательную замену этих трех слов, равно времени их набора в полях "найти-заменить". Если вы не заключили пари, сделайте три прохода и забудьте.
 

NNN5

Модератор
15 лет на форуме
Сообщения
1 257
Реакции
1 013
На пару десятков страниц! На пару тысяч - не хотите ли? И работает отлично.
 
Статус
Закрыто для дальнейших ответов.